Interaction · Keys, scroll and focus: roving focus, scroll sync, type-ahead
RovingFocus keeps a row or column of items behind one Tab stop: the arrows walk focus, Home and End reach the ends, Enter or Space presses, and a press moves the stop without taking focus. ScrollSync keeps boxes at one place along an axis: the pane a wheel turned leads, and a canvas ahead of the panes copies its place before they draw. SelectableList moves its cursor to the row that starts with the letters typed, the letters joining within a pause and a Command letter left to the app. forms::History becomes public as the undo manager. The gallery shows gpui's own key bindings, a two-stroke chord waiting on its first stroke, uniform_list, autofocus and the focus ring. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
ec4c15b539
commit
9e3e6c109d
18 files changed
+925
-29
No files matched your search
+10
-10
@@ -235,16 +235,16 @@
|
||||
|
||||
## T38b Interaction · Keys, scroll and focus
|
||||
|
||||
- [ ] Hotkeys / KeyBinding — native `actions!`, `bind_keys`, `key_context`
|
||||
- [ ] KeyChord — native multi-keystroke bindings
|
||||
- [ ] Undo / Redo Manager
|
||||
- [ ] InfiniteScroll Trigger → `lists::InfiniteList`
|
||||
- [ ] VirtualScroller — native `list()` / `uniform_list()`
|
||||
- [ ] ScrollSync
|
||||
- [ ] Autofocus — native `window.focus()`
|
||||
- [ ] RovingTabIndex
|
||||
- [ ] TypeAhead
|
||||
- [ ] FocusVisible → `primitives::FocusRing`
|
||||
- [x] Hotkeys / KeyBinding — native `actions!`, `bind_keys`, `key_context`
|
||||
- [x] KeyChord — native multi-keystroke bindings; `window.pending_input_keystrokes()` shows the first stroke
|
||||
- [x] Undo / Redo Manager → `forms::History`, made public
|
||||
- [x] InfiniteScroll Trigger → `lists::InfiniteList`
|
||||
- [x] VirtualScroller — native `list()` / `uniform_list()`
|
||||
- [x] ScrollSync
|
||||
- [x] Autofocus — native `window.focus()`
|
||||
- [x] RovingTabIndex → `interaction::RovingFocus`
|
||||
- [x] TypeAhead → `lists::SelectableList`, whose letters move its cursor
|
||||
- [x] FocusVisible → `primitives::FocusRing`
|
||||
|
||||
## T39 Theme — `src/theme`
|
||||
|
||||
|
||||
Reference in new issue
Block a user