NSView blurry in Sonoma, in app and Xcode 15

I have a non-shipping internal test app which is macOS only. It uses AppKit and .xib files to describe the UI.

On Sonoma, the app renders with most of its UI quite blurry, as if a 10 pixel Gaussian blur were applied to it. The blur is applied to entire views, not just the text. It doesn't vary with screen resolution. I observed this behavior with one of the Sonoma betas but I think it went away when I re-launched the app - at any rate, I forgot about it.

I've updated my dev machine to the shipping Sonoma and the problem is extant. I opened up the .xib file in Xcode and the blurriness is visible there too. I haven't applied any effect layers to my UI.

Not all of the views in my UI are blurry.

Has anyone else seen this?

Accepted Reply

Did you try to set the clip to bounds property to true?

Replies

I filed a bug related to this, FB13238490. I could not reproduce exactly the same behavior in a test application.

I'm using a xib based interface with Core Animation layer effects.

In Ventura, a Box Blur type of Background Filter effect only affected the background directly behind the view with the filter effect - it did not extend beyond the bounds of the view.

In Sonoma, the Background Filter effect blurs all the views 'behind' (in z order) the view with the filter, and the blur effect extends over the entire background.

Did you try to set the clip to bounds property to true?

I filed a bug report and it was returned as "behaves as designed". The default clipping behavior for views changed in Sonoma, it is in the release notes. So, yes, I fixed this by setting clip to bounds to true for some of my views. I'm pretty sure I read the release notes but ignored that item because I thought I'm not drawing outside my bounds anyway. But a background filter layer is just a layer...