BUG: Application activation policy breaks floating status windows in fullscreen

Originator:craig.hockenberry
Number:rdar://10800197 Date Originated:
Status:Open Resolved:
Product:Mac OS X Product Version:10.7.2 / 11C74
Classification:Serious Bug Reproducible:Always
 
Summary:

NSApplicationActivationPolicyRegular causes irregular behavior with a borderless NSWindow in a popup menu window level while working in fullscreen desktops.

Steps to Reproduce:

Open the attached sample project that:

• Creates an application that uses NSApplicationActivationPolicyRegular
• Creates a borderless NSWindow with a level of kCGPopUpMenuWindowLevelKey
• Sets that window's collectionBehavior to NSWindowCollectionBehaviorCanJoinAllSpaces
• Creates a NSStatusItem that causes a second borderless window to be created

http://files.iconfactory.net/craig/bugs/SpacedOut.zip

Run the application:

1) A green floating window will appear
2) Switch to an application running in a fullscreen desktop (e.g. Safari)
3) Click on the button in the green window
4) While in the fullscreen desktop, click on the menubar status item labelled "BUG"

Expected Results:

In step 3, the green window should remain in the fullscreen desktop.
In step 4, the red window should appear on the fullscreen desktop.

Actual Results:

In step 3, the green window switches to the first desktop.
In step 4, the red window never appears on the fullscreen desktop.

Regression:

If the activation policy is set to NSApplicationActivationPolicyAccessory, the windows and desktops behave correctly. Unfortunately, this has a side-effect of removing the application's Dock icon and menubar.

Notes:

To see these problems in a shipping application, please check out http://xScopeApp.com

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!