fix(iOS, Tabs+native-stack): allow for bottom, left, right extended layout edges with native stack header non-translucent #3012
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Previously, if native-stack's header was non-translucent, stack would not allow any extended edges, therefore preventing content from rendering under translucent tab bar controller (this was especially noticable with iOS 26).
Now, we only prevent from extending layout for top edge, where UINavigationController has its UINavigationBar.
I tested basic test screens (
SimpleNativeStack
,TestHeaderTitle
,BottomTabsAndStack
,HeaderOptions
) on iOS 18 and 26 beta 3 and did not find any problems related to this change -edgesForExtendedLayout
applies for system-related navigation bars and views and I don't think that we used those on any other edges until now - with native bottom tabs implementation.Closes https://github.com/software-mansion/react-native-screens-labs/issues/216.
Moved from https://github.com/software-mansion/react-native-screens-labs/pull/243.
Changes
edgesForExtendedLayout
to all apart from top instead of noneScreenshots / GIFs
Test code and steps to reproduce
Open Tab4 on iOS 26.
Checklist