Re: Looking for better solution than this old hack
Re: Looking for better solution than this old hack
- Subject: Re: Looking for better solution than this old hack
- From: Uli Kusterer <email@hidden>
- Date: Wed, 18 Jul 2012 10:10:37 +0200
On 18.07.2012, at 06:27, Graham Cox wrote:
> 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.
There are some HIG rules on when controls should be inactive, and also several kinds of "active":
-> there is "main window state" and there is "has keyboard focus". Palettes generally ignore the first, but honor the second, so the user knows whether keypresses will go in the main window or not. So some change in look is expected (different from classic MacOS, where these two states were hardly distinguished, except maybe for the focus border on the view that has keyboard focus).
-> Pushbuttons can accept the first click or not. If they do not, this means you get the classic MacOS-style "click once to activate the window, click a second time to actually trigger the button" This is good for "dangerous" buttons like "Delete", which you don't want to trigger accidentally when just trying to bring forward a window. -acceptsFirstMouse: determines that. Maybe your buttons give NO from that and such draw inactive?
-> It's not the floating panel that does anything with the active state, it is each view itself. They register for -windowDidBecomeKey: and similar notifications and redraw themselves accordingly.
-> Have you tried switching "non-activating panel" on? It sounds like that is what you want. It can still have keyboard focus then, but just won't be the main window.
Cheers,
-- Uli Kusterer
"The Witnesses of TeachText are everywhere..."
http://www.lookandfeelcast.com
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden