Native sidebar slides out over the status bar (missing top safe-area inset) #295
Labels
No labels
area:auth
area:ci
area:db
area:infra
area:native
area:pwa
area:service
epic
feature
foundation
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
james/carol#295
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
On the native app (Android; also the iOS notch), the navigation sidebar/drawer slides out over the system status bar — the Carol brand row overlaps the clock/battery/signal area.
Cause
The authenticated layout renders the drawer with
drawerStyle.backgroundColorpainting fromy=0(under Android's translucent status bar), and theSidebarroot container (apps/client/lib/nav/Sidebar.tsx) used onlypaddingVertical: 16— it never consumeduseSafeAreaInsets(). So content started 16px from the top of the drawer surface, inside the status-bar region.The in-scene
MobileHeaderinapps/client/app/(app)/_layout.tsxalready insets correctly (paddingTop: insets.top); the drawer didn't. Fix mirrors that pattern.Fix
In
apps/client/lib/nav/Sidebar.tsx, adduseSafeAreaInsets()and set the sidebar containerpaddingTop = 16 + insets.top. On webinsets.topis 0, so the permanent/narrow web sidebar is unchanged.Top-only (matches the reported bug + the
MobileHeaderprecedent); bottom inset is out of scope.