What is the scroll edge effect supposed to look like now?

At WWDC the scroll edge effect was presented as a variable blur combined with a soft gradient.

Since beta 4 the bottom scroll edge effect has no blur, the top bar sometimes has, but sometimes does not. Even in my own app I have two views with totally different results. This was not changed back in beta 5, so I assume this is not a bug but an intended change.

It's hard to design for such a moving target. Especially the missing bottom blur looks bad in a lot of places in my app and I'm debating not shipping the new design if this does not get resolved.

Is there any guidance how this effect is supposed to look now? At this point it just seems random and there's no way adjust the way it looks.

Phone: Top blur, bottom no blur

Settings: Top blur, bottom no blur

Notes: No blur at all

Music: No blur at all

My own app: No top blur

My own app: Top blur

Kind in mind the betas are an evolving version so you can expect changes and fixes along the way. If you're using a scroll view, use the scrollEdgeEffectStyle(_:for:) to define the style of pocket.

I still couldn't make .scrollEdgeEffectStyle(.soft, for: .top) work in macOS Tahoe ever - even though we are at beta6 now. The .default (.hard) works fine though. Glad to see that the .soft option at least do something on iOS (even if the effect is evolving). I get around this bug (?) by using all kinds of hacks to mimic the intended blur effect.

UPDATE: I was trying to use .soft with .safeAreaInset. Apparently with .safeAreaBar the .soft effect works in Tahoe, while with .safeAreaInset it does nothing (only .hard works). This is somewhat counter-intiutive and I don't remember the documentation implies that it should behave like this.

I think it's detrimental to the new design to have a progressive blur at the top and none at the bottom. It just looks inconsistent. Betas 1-3 looked perfect in that regard. Filed as FB19389091.

We're getting close to release and this is still a mess. It looks like SwiftUI randomly decides whether it gives you a top progressive blur or not. I have two Settings views. One gets it, one does not? Why? I don't know. It's just a settings page. Okay.

But then my game page does not get it either (which is the most important view in my app) and it looks so ugly and cluttered with text and the status bar.

I think this is it. I'm not going to ship this and use UIDesignRequiresCompatibility. This not the quality my users come to expect.

I am seriously tired of this. This beta cycle was the worst in a decade. I don't want the system to make these weird choices for me. Either do it, or don't, or give developers all the control over this they need if the system cannot do a proper job of resolving this.

What is the scroll edge effect supposed to look like now?
 
 
Q