[Sparkle] Quiet mode?

Andy Matuschak andy at andymatuschak.org
Wed Feb 13 10:20:31 PST 2008


It needs to be done by delegation because the delegate implementation  
needs to respond: if your app is going to be responsible for  
displaying some alternate interface, it needs to be able to return the  
user's response to that interface. It's also important for the  
delegate method to be able to suppress Sparkle's native interface for  
the action in question.

There's no need to have a passive key—just see if the delegate  
implements the method in question. If your application needs to do  
something in the delegate only sometimes, it can take care of that  
branching in the delegate method.

> One other question. In applicationDidFinishLaunching:, you have this:
>
>    [self performSelector:@selector(checkForUpdatesInBackground)  
> withObject:nil afterDelay:delayUntilCheck];
>
> I believe that this ensures that all other  
> applicationDidFinishLaunching methods will get called before  
> checkForUpdatesInBackground (even if delay is 0). This is important  
> because we need to make sure the app has time to register for  
> notifications before the notifications are sent (since the  
> applicationDidFinishLaunching methods can be called in any order).  
> Do you have the same understanding of performSelector? Or do we need  
> to recommend apps register for notifications in init or awakeFromNib?

This does indeed take care of the case you mention. Apps can register  
for notifications or set the delegate of the updater in their  
applicationDidFinishLaunching: method.

- Andy Matuschak


More information about the Sparkle mailing list