On Apr 12, 2025, at 06:34, Gabriel Zachmann via Cocoa-dev 
<cocoa-dev@lists.apple.com> wrote:
> 
> The settings of screen savers used to be broken for a long time, i.e., macOS 
> would not make them persistent, or it would not "deliver" them to the plugin 
> through the regular NSUserDefaults API.
> 
> A while ago, I think I observed that the settings of my screen saver under 
> macOS 15.3 were persistent - at last.
> 
> Now, it seems like the settings are rather volatile - again!
> 
> I.e., sometimes, my screensaver gets the correct settings , sometimes not.
> Or maybe, they are never preserved, it seems as soon as I go out of System 
> Settings, my screensaver's settings are lost. Again.
> 
> Does anybody else experience this regression?

My screensaver has never experienced this problem with any OS version. You 
*are* using the correct NSUserDefaults object, right? [ScreenSaverDefaults 
defaultsForModuleWithName:@"your module name"]; instead of 
NSUserDefaults.standardDefaults.

I've mentioned this to you before, but what I'm guessing is happening is that 
your screensaver is experiencing the same thing that all legacy screensavers 
are seeing, which is that they no longer get stopped when the user wakes the 
screen. The process named "legacyScreenSaver (Wallpaper)" loads and runs your 
screensaver views, but they broke it some time back, and it no longer tells 
them to stop. This is very easy to see by looking at all processes in Activity 
Monitor. Start and stop the screensaver multiple times and you're bound to end 
up with multiple instances running for every screen. I've added code to kill 
the owning legacyScreenSaver process when my last view receives the 
@"com.apple.screensaver.didstop" notification, which I added an observer for on 
screensaver start, keeping a global count of how many instances were started 
and stopped via the notification.

--
Steve Mills
Drummer, Mac geek

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to