From 999f7f6d7fc81a88bd1ba9143a7cf59f2d9d0f87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9B=B7=E7=94=B5=E8=8A=BD=E8=A1=A3?= Date: Thu, 1 Oct 2026 12:48:48 -0400 Subject: [PATCH] =?UTF-8?q?T48f=20Docs=20=C2=B7=20Focus=20and=20keyboard?= =?UTF-8?q?=20passes=20review?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TASKS.md | 2 +- frontend/src/docs/focus.md | 2 +- tasks/reviews.md | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/TASKS.md b/TASKS.md index 74c4421..03b746b 100644 --- a/TASKS.md +++ b/TASKS.md @@ -169,7 +169,7 @@ Per-component lines live in `tasks/`. Tags there: - [x] T48c Docs · Installation: Rust, the git dependencies, gpui_platform's fonts, runtime shaders, the gallery as a check, what `init` refuses - [x] T48d Docs · Getting started: an app from `init` to a window under a root `FocusScope`, with a Button - [x] T48e Docs · Theme: modes, tokens through `cx.theme()`, high contrast, color-blind safe charts, an owner's palette -- [ ] T48f Docs · Focus and keyboard: Tab and Shift-Tab, the root scope, tab stops, the focus ring, overlays that take and give back focus +- [x] T48f Docs · Focus and keyboard: Tab and Shift-Tab, the root scope, tab stops, the focus ring, overlays that take and give back focus - [ ] T48g Docs · Motion: durations, reduced motion, springs, motion from a change - [ ] T48h Docs · Icons, fonts and assets: `Assets`, `IconName`, adding icons, the embedded fonts, file icons - [ ] T48i Docs · Overlays: what draws over the page, dialogs, popovers, toasts diff --git a/frontend/src/docs/focus.md b/frontend/src/docs/focus.md index 63d7b08..0dc5bc6 100644 --- a/frontend/src/docs/focus.md +++ b/frontend/src/docs/focus.md @@ -36,7 +36,7 @@ Tab from the window moves through First, the tile and Last. Enter or Space on th ## Buttons -A `Button` stays out of focus when clicked: it stops GPUI's focus on mouse down. Tab still reaches it, unless it is disabled; a loading button stays a Tab stop, so focus holds through the wait. A button whose words and action change with a mode keeps one handle through `Button::focus_handle(&handle)`, so focus holds across the change. +A `Button` stays out of focus when clicked: it stops GPUI's focus on mouse down. Tab still reaches it, unless it is disabled; a loading button stays a Tab stop, so focus holds through the wait. A button whose words and action change with a mode keeps one handle through `Button::focus_handle(&handle)`, built with `tab_stop(true)`, so focus holds across the change. ## Overlays diff --git a/tasks/reviews.md b/tasks/reviews.md index 0bff2b1..ded1492 100644 --- a/tasks/reviews.md +++ b/tasks/reviews.md @@ -335,3 +335,4 @@ | T48c | 2 | PASS | | | T48d | 1 | PASS | note taken: the lead and the table both count four parts | | T48e | 1 | PASS | notes taken: `mode()` in the read table, `platform` among update's fields | +| T48f | 1 | PASS | note taken: a button's own handle is built with tab_stop(true) |