Tables: focused headers scroll into view; long tables scroll sideways

A sortable header is a tracked Tab stop; once focused it sets its
table's sideways offset whole from its painted bounds and asks one
frame. The virtualized branch scrolls sideways too, and its list
keeps a plain wheel to its rows. layout::on_axis keeps a scroll box's
wheel to its axes; tables, code blocks, the thumbnail strip and the
gallery's page use it. Footer figures move to tables/foot.rs; the
profiler's ruler takes theme.chart().label. HumanInputRequest's
answered state gets a test.
This commit is contained in:
ZacharyZhang-NY committed 2026-09-26 12:00:27 -04:00
1 parent a29cc8bc45
commit 1f1166fef0
15 files changed
+405 -254

No files matched your search

+3 -4
View File
@@ -1,5 +1,6 @@
use ely_gpui_component::{
buttons::{ButtonVariant, IconButton},
layout::on_axis,
primitives::{FocusScope, IconName},
theme::{ActiveTheme, ControlSize, Mode, Radius, TextSize, Theme},
};
@@ -122,8 +123,7 @@ impl Gallery {
),
)
.child(
div()
.id("nav")
on_axis(div().id("nav"))
.flex()
.flex_col()
.gap_0p5()
@@ -208,8 +208,7 @@ impl Render for Gallery {
.text_size(theme.text_size(TextSize::Base))
.child(sidebar)
.child(
div()
.id("page")
on_axis(div().id("page"))
.flex_1()
.h_full()
.overflow_y_scroll()