I’m seeing a strange visual bug in iOS 26 when building chat-style UIs that use an inverted ScrollView
or List
(via .rotationEffect(.radians(.pi))
and .scaleEffect(x: -1, y: 1))
to anchor messages at the bottom.
When I add .ignoresSafeArea()
to let the chat bleed behind the navigation bar - the new navigation bar fade (that subtle top-to-bottom gradient Apple added in iOS 26) behaves incorrectly. Instead of fading from the top of the screen toward the nav bar, it fades upward from the bottom of the view, effectively covering the entire screen with the gradient.
This only happens when the view is inverted.
If I remove .ignoresSafeArea()
, the fade looks correct — but then my chat no longer extends behind the nav bar.
It looks like the fade effect is being applied in the transformed coordinate space of the inverted scroll view rather than in visual screen space. I haven’t found a reliable workaround besides disabling the fade (which isn’t really possible).
Has anyone found a proper solution or a modifier that prevents the fade inversion when using flipped ScrollViews? Would love to know if Apple is aware of this or if there’s a hidden API for disabling that fade effect.
I have made a report about this in Feedback Assistant: FB20540755