Skip to content

Fix/tab screen double bottom inset - #11

Merged
ghostcoder42 merged 1 commit into
mainfrom
fix/tab-screen-double-bottom-inset
Sep 8, 2026
Merged

ghostcoder42 merged 1 commit into
mainfrom
fix/tab-screen-double-bottom-inset

Conversation

@ghostcoder42

Copy link
Copy Markdown
Owner

No description provided.

@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

💯 Test Coverage

Lines Statements Branches Functions
Coverage: 56%
56.25% (967/1719) 48.92% (524/1071) 46.48% (251/540)

😎 Tests Results

Tests Skipped Failures Errors Time
305 0 💤 0 ❌ 0 🔥 23.6s ⏱️
👀 Tests Details • (56%)
File% Stmts% Branch% Funcs% LinesUncovered Line #s
All files56.2548.9246.4856.72 
src/app/(app)5.053.14.275.19 
   _layout.tsx000021–104
   following.tsx000010–52
   index.tsx81.255071.428052, 81–82
   library.tsx000021–406
   search.tsx000017–192
   settings.tsx000026–363

Tab screens lost a strip roughly the tab bar's height between content
and the bar on devices where the bottom inset is real (e.g. a Pixel C
on Android 8.1 with its 3-button navigation bar): the tab bar already
positioned itself above the system navigation bar, and the screens'
SafeAreaView padded the same bottom inset again as content padding. On
gesture-navigation devices the inset is near zero, which is why it
went unnoticed there.

Rather than splitting the inset policy across five screen files
(opting each out of the bottom edge) and react-navigation's internal
bar behavior, the fix consolidates it in one place: a wrapper in the
tab layout consumes all four safe-area edges, the navigator gets an
explicit safeAreaInsets.bottom = 0 (a public option, not a patch — and
one that fails as visible layout breakage if library defaults ever
shift under an upgrade, never as a silent change), and the tab screens
become plain Views with no inset logic at all. The strip under the
system navigation bar is painted by the container in the bar's color,
and the vendored bar's inset channel — which reads 0 on some older
devices — is no longer relied upon.

Verified pixel-identical on device (content, bar and label positions
unchanged). A future floating tab bar over scrolling content now only
edits the tab layout file; full-screen stack screens (post, author,
model, tag, category) keep handling their own edges.
@ghostcoder42
ghostcoder42 force-pushed the fix/tab-screen-double-bottom-inset branch from 1d29542 to a6659bf Compare September 8, 2026 02:04
@ghostcoder42
ghostcoder42 merged commit bbed324 into main Sep 8, 2026
1 check passed
@ghostcoder42
ghostcoder42 deleted the fix/tab-screen-double-bottom-inset branch September 8, 2026 02:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant