Pin the group strip where it can be found

It was inside AdjustPanel, which on a tablet put it below five other panels
and off the bottom of the screen: present, working, and unreachable without
scrolling past everything it exists to save you scrolling past. A control
that answers "where is everything else" cannot itself be somewhere else.

Now a GroupStrip above the scrolling column, so it never scrolls away. It
still names no group — the strings arrive resolved from whatever the
operations declared themselves to be about.
This commit is contained in:
2026-08-22 10:46:35 +02:00
parent 1d7106c94d
commit 9a7b045df4
2 changed files with 85 additions and 55 deletions
+10 -4
View File
@@ -1,5 +1,5 @@
import { Theme } from "theme.slint";
import { AdjustPanel, GeometryPanel, ParamRow, TransferPanel } from "adjust.slint";
import { AdjustPanel, GeometryPanel, GroupStrip, ParamRow, TransferPanel } from "adjust.slint";
import { MaskPanel, MaskRow, SubjectRow } from "masks.slint";
import { LaunchScreen } from "launch.slint";
import { LibraryGrid, LibraryCell, TimelineBar, PhotoRoll } from "library.slint";
@@ -1837,6 +1837,15 @@ in property <bool> panel-visible: true;
// scroller — see the note on `SliderTrack`'s `claimed`.
// Without it every attempt to drag a slider would scroll
// the column instead.
// Pinned: the strip is how the column is navigated, so it
// cannot be somewhere you have to navigate to.
GroupStrip {
enabled: root.adjust-enabled;
tabs: root.adjust-tabs;
active-tab: root.adjust-active-tab;
picked(i) => { root.adjust-tab-picked(i); }
}
Flickable {
viewport-height: column.preferred-height;
interactive: !adjust.slider-dragging;
@@ -1963,9 +1972,6 @@ in property <bool> panel-visible: true;
adjust := AdjustPanel {
rows: root.adjust-rows;
tabs: root.adjust-tabs;
active-tab: root.adjust-active-tab;
tab-picked(i) => { root.adjust-tab-picked(i); }
enabled: root.adjust-enabled;
curve-samples: root.curve-samples;
param-changed(op, param, value) => {