My app has floating palettes that generally set [NSPanel 
setBecomesKeyOnlyIfNeeded:YES]; Most of the time these palettes are therefore 
inactive, and yet provide a large number of useful controls that work as 
expected when operated. Problem is, a lot of these controls show the inactive 
state because the window is inactive. (This isn't actually very consistent, it 
depends on the control style chosen).

In the past, I have used a hack to fool controls into thinking they were in a 
window that was active when it actually wasn't, by subclassing NSPanel and 
overriding:

- (BOOL)        _hasActiveControls
{
        return YES;
}


This no longer seems to work since some versions ago, as well as being 
undocumented, and inapplicable for the App Store and so on.

I'd like to know if there is a supported way to do this. It seems a bit crazy 
that floating panels even bother modulating the active state of controls when 
they are floating and are *always* effectively active, and it looks better and 
is more usable as well.

--Graham


_______________________________________________

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