Several years ago I succumbed to a few users who wanted the ability to switch 
my OS X apps between foreground (regular app) and background (LSUIElement) on 
the fly.  Switching has been possible in both directions since OS X 10.7, using 
TransformProcessType().  The user interface is, for example, a NSStatusItem 
(aka “menu extra”).

However, in 10.9, Apple deprecated all Process Manager API *except* 
TransformProcessType().  The deprecated ProcessInformationCopyDictionary(), in 
particular, was the only way to determine the *current* process type.  (The 
dictionary it returned could have keys LSUIElement or LSBackgroundOnly.)

Without this API, the only way I have to know the current type is to ask 
NSBundle if Info.plist has LSUIElement when the app launches, and keep track of 
when I change it.  It works, but, I think, not very robust.

Does anyone know of a non-deprecated way to determine process type?  I’ve 
reviewed NSRunningApplication pretty carefully but this capability appears to 
have not survived the “upgrade” from Process Manager :(

Jerry
_______________________________________________

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