From 5a576c4d288e469a75c396b365e6ace8290aa3d0 Mon Sep 17 00:00:00 2001 From: Jean-Luc Makiola Date: Mon, 6 Jul 2026 21:47:17 +0200 Subject: [PATCH] components: FullScreenPicker uses the pinned bar Completes the picker upstream: FullScreenPicker now passes largeTopBar=false to CollapsingScaffold, so the family's selection pickers sit under a pinned single-line bar instead of a tall collapsing header (the short list has nothing to scroll past). Matches Calendula's scrollable-picker fix; applies family-wide. Co-Authored-By: Claude Opus 4.8 (1M context) --- CHANGELOG.md | 4 +++- .../de/jeanlucmakiola/floret/components/OptionPicker.kt | 8 +++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 63f339a..aa11462 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -39,7 +39,9 @@ are no binary releases; "version" tracks the shared `version` in the root build - `OptionCard` — the sanctioned selection-dialog pick. - `CollapsingScaffold` — the collapsing settings/sub-screen scaffold; set `largeTopBar = false` for a pinned single-line bar (the picker variant). - - `FullScreenPicker` / `OptionPicker` — the full-screen single-select picker. + - `FullScreenPicker` / `OptionPicker` — the full-screen single-select picker, + now over a pinned single-line bar (a picker is a short list, so no tall + collapsing header to scroll past). - `ReorderableColumn` — dependency-free drag-to-reorder for the short, fixed grouped-card Settings lists; pairs with `GroupedRow(gapBelow = false)`, which hands the column uniform control of row spacing. diff --git a/components/src/main/kotlin/de/jeanlucmakiola/floret/components/OptionPicker.kt b/components/src/main/kotlin/de/jeanlucmakiola/floret/components/OptionPicker.kt index e4c9c56..722827c 100644 --- a/components/src/main/kotlin/de/jeanlucmakiola/floret/components/OptionPicker.kt +++ b/components/src/main/kotlin/de/jeanlucmakiola/floret/components/OptionPicker.kt @@ -15,9 +15,10 @@ import androidx.compose.ui.window.DialogWindowProvider /** * Full-screen scaffold for selection pickers: a full-bleed [Dialog] that reuses - * [CollapsingScaffold] (collapsing title + back), so a picker is visually - * identical to a settings sub-page and uses the full width. [content] places the - * connected grouped rows; selecting one calls [onDismiss]. + * [CollapsingScaffold] with a pinned single-line bar, so a picker uses the full + * width without a tall header — it's a short selection list, so the large + * collapsing header would only be empty space to scroll past. [content] places + * the connected grouped rows; selecting one calls [onDismiss]. */ @Composable fun FullScreenPicker( @@ -45,6 +46,7 @@ fun FullScreenPicker( CollapsingScaffold( title = title, onBack = onDismiss, + largeTopBar = false, predictiveBack = predictiveBack, content = content, )