Sheet peek/expand, theme-aware media stage, and edge-to-edge viewer bars
Long-content bottom sheets (Details' Versions/Activity tabs with many rows) opened locked to nearly full screen height with no room left to adjust. showNooSheet now measures its content once against the available height: anything that fits comfortably still sizes to content as before, but content tall enough to need scrolling opens at a native-style draggable peek instead, which the user can drag up to reveal more of (and drag back down to dismiss). The media viewer's stage was pinned to black regardless of theme, which read as jarringly out of place in light mode - it now follows the app's own `bg`. The floating top/bottom bars stay a fixed dark panel either way (they need to read over arbitrary photo/video brightness, not over the stage), but both had their SafeArea nested the wrong way around: it wrapped the whole panel instead of just its content, so the panel's background stopped short of the actual screen edge - most visibly the bottom bar ending above the gesture area instead of extending behind it. The background now wraps the SafeArea instead.
This commit is contained in:
@@ -340,12 +340,16 @@ Sidebar items are 38px tall with radius 12, an 18px icon and a 14/500 label. The
|
||||
Location, Modified, Created, ...). Versions and Activity reuse their own
|
||||
row/feed treatment. Same on every platform - this sheet has no iOS/Android
|
||||
split.
|
||||
- **Media viewer** (the full-screen photo/video viewer): a black stage
|
||||
regardless of theme, like a native photo/video viewer - not `bg`. A
|
||||
translucent, blurred top bar (back, filename, meta) and bottom bar float
|
||||
over the media; this is the one deliberate exception to "no blur" in
|
||||
product UI, since it's chrome over photo/video content, not over the app's
|
||||
own surfaces. Back is a plain arrow (`arrow-left`), not the iOS
|
||||
- **Media viewer** (the full-screen photo/video viewer): the stage is `bg`,
|
||||
following the app's own theme rather than a fixed black - a black stage
|
||||
in light mode read as jarringly out of place. A translucent, blurred top
|
||||
bar (back, filename, meta) and bottom bar float over the media in a fixed
|
||||
dark panel regardless of theme (it needs to read over arbitrary photo/
|
||||
video brightness, not over `bg`); this is the one deliberate exception to
|
||||
"no blur" in product UI, since it's chrome over photo/video content, not
|
||||
over the app's own surfaces. Both bars' background extends edge-to-edge
|
||||
behind the status bar/gesture area, with only their content padded clear
|
||||
of it. Back is a plain arrow (`arrow-left`), not the iOS
|
||||
chevron+label pushed-screen pattern - platform split still to do. The
|
||||
bottom bar holds every action in one row (share, favorite, open
|
||||
externally, download, delete, details) on every platform; don't add a
|
||||
|
||||
Reference in New Issue
Block a user