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.
This commit is contained in:
ZacharyZhang-NY committed 2026-09-27 16:10:32 -04:00
1 parent 08171a269d
commit 9a976b1c00
18 files changed
+925 -29

No files matched your search

+4
View File
@@ -113,6 +113,10 @@ impl ListItem {
self.disabled
}
pub(crate) fn title_text(&self) -> &SharedString {
&self.title
}
/// Makes the row pressable; the press keeps focus where it is.
pub fn on_click(
mut self,