Kit · K02: Tab binds under FocusScope's ElyFocus context, so a deeper context's Tab wins

This commit is contained in:
ZacharyZhang-NY committed 2026-10-07 12:39:20 -04:00
1 parent c61a5b22b0
commit a9b30c7eab
7 files changed
+58 -11

No files matched your search

+2 -1
View File
@@ -14,7 +14,7 @@ Rules: the work order follows dependencies, since the PRD has no chapter for it.
## Items
- [x] K01 gpui from `gpui-pre =0.3.8`, Kit's pin: crate, gallery, web build, docs, CI
- [ ] K02 Tab and Shift-Tab bound under `FocusScope`'s own context, so a deeper context's Tab wins whatever the order of `init`
- [x] K02 Tab and Shift-Tab bound under `FocusScope`'s own context, so a deeper context's Tab wins whatever the order of `init`
- [ ] K03 Assets: `init` checks every embedded file through the app's source; one source serves Ely's files and another's
- [ ] K04 `compat/kit`: a crate on the newest Kit that runs both libraries in one window, in `scripts/check.sh` and CI
- [ ] K05 `gpui-fast`: Ely builds and tests on Kit's other engine, or the item records why not
@@ -25,3 +25,4 @@ Rules: the work order follows dependencies, since the PRD has no chapter for it.
One line per item: what changed, what stayed and why, review rounds.
- K01: gpui, gpui_platform and gpui_web come from `gpui-pre` `=0.3.8`; the lock holds no git source and one copy of each. `gpui-pre` split leak detection from `test-support`, so this crate's `test-support` turns on `gpui/leak-detection`, and a test that leaks on purpose proves it. The check, the wasm check, the web build (20.0 MB), a headless Chromium shot and the site build pass. README and the install guide name the snapshot. Review: 2 rounds.
- K02: `FocusScope` sets the key context `ElyFocus`, and `init` binds Tab and Shift-Tab under it. A host's Tab in a deeper context wins whatever the order of `init` (a test binds the host's first, the order that lost: 0 indents before, 1 after); Ely's terminal, editor, traps and the inspector's scope behave as before. Review: 1 round.