Hi,
Why are WineWindows NSPanels, not NSWindows? I can see a disadvantage of this, which is that NSPanels don’t show up in Mission Control, but I can’t see the advantage.
~Theodore
On Jan 12, 2016, at 9:42 PM, Theodore Dubois tblodt@icloud.com wrote:
Why are WineWindows NSPanels, not NSWindows?
Only NSPanel supports the NSUtilityWindowMask style mask and the Mac driver doesn't know in advance which windows may be utility windows. That can change at any time as the Win32 window style changes.
I can see a disadvantage of this, which is that NSPanels don’t show up in Mission Control, but I can’t see the advantage.
Wine windows show up just fine in Mission Control if they're supposed to. The Mac driver controls this explicitly by including NSWindowCollectionBehaviorManaged in the collectionBehavior, or not, based on the Win32 window style.
Panels don't behave differently from windows in this regard. Only the window level would affect it, if we weren't overriding it.
As near as I know, the Mac driver nullifies all differences in behavior between panels and windows. Making WineWindows subclass from NSPanel only provides more flexibility. Do you have a specific case that demonstrates a problem?
-Ken