Hi Jeff, Well that's what I was afraid to learn... Gotta find a workaround then!
Do you know if by any chance, something similar can be done from a process running as a service using launchd? Thanks a lot for you quick reply :) Olivier Le 14 févr. 2011 à 19:06, "Jeff Johnson" <[email protected]> a écrit : > Hi Olivier. > > rdar://problem/6001460 > > See http://lapcatsoftware.com/rdar/6001460/index.html for an explanation. > > In short, you won't be able to do it with a LSUIElement app. > > -Jeff > > > On Feb 14, 2011, at 10:52 AM, Olivier Lance wrote: > >> Hi all, >> >> I'm facing a problem returning NSTerminateLater from >> applicationShouldTerminate: in a status item application... >> I've tried many things and followed the doc I've found, but nothing works as >> I'm expecting it to. >> >> In short, I want to delay the termination of my status item application >> (which has LSUIElement set to YES if that matters) so that I can clean some >> things up before exiting. >> >> It does work when I quit the application manually from the menu, but not at >> all when I'm restarting the computer. I've seen Terminal and other apps >> block the restart process to ask the user to confirm termination, so I guess >> what I want is feasible. I'm just probably missing some details... >> >> Here's what I do : >> >> in applicationShouldTerminate: I display a dialog using NSRunPanel. >> Depending on user choice, I either return NSTerminateNow or NSTerminateLater. >> When I return NSTerminateLater I initiate my clean up process, which makes >> some asynchronous calls to a device driver. When I receive the driver's >> response, I call [NSApp replyToApplicationShouldTerminate:YES]. >> The entire process works perfectly fine when the app is being exited from >> the status item menu. If I do " > Restart" though, the AlertPanel shows >> (sometimes it doesn't even have the time to show up) but the system >> continues exiting and I don't have time to click anything. >> >> I've tried always returning NSTerminateLater, and then display the Alter >> Panel, but it doesn't change anything. >> >> So what am I doing wrong? Is there a requirement I don't meet? Does it have >> to be a document-based application? >> >> Also, would you have any clever way to debug that kind of situation? Tried >> remote debugging but the connection would just be shut on restart... >> >> Thanks a lot, >> Olivier Lance._______________________________________________ >
_______________________________________________ Cocoa-dev mailing list ([email protected]) 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: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [email protected]
