Re: prevent UIAgent with floating NSPanel stealing focus?
Re: prevent UIAgent with floating NSPanel stealing focus?
- Subject: Re: prevent UIAgent with floating NSPanel stealing focus?
- From: has <email@hidden>
- Date: Mon, 16 Mar 2015 22:21:37 +0000
On 16/03/2015 22:02, Ken Thomases wrote:
On Mar 16, 2015, at 4:50 PM, has <email@hidden> wrote:
Quick question as I'm guessing the answer is "no", but I've a UIAgent that floats an NSPanel above other apps and I'm wondering if there's any way to avoid 1. having to click not once but twice to put the cursor in a text field when the panel isn't already active, and 2. prevent the next app - in this case Adobe Illustrator - losing all focus which causes all of its own panels to vanish?
For issue 2, include NSNonactivatingPanelMask in the panel's style mask or, in IB, enable Non Activating in the Attributes inspector for the panel.
Issue 2 fixed. Woot!
That may also fix issue 1, but I'm not sure.
It doesn't, but it's definitely a start. Just having AI stay in focus
throughout makes the click-and-click-again window hopping a lot less
disconcerting.
You may also want to experiment with setting the panel's becomesKeyOnlyIfNeeded property, although that's more for panels which don't have many text fields.
Another possible fix for issue 1 is to use a custom subclass of NSTextField which overrides -acceptsFirstMouse:, calls through to super (just in case it does something important), and then returns YES regardless of what the super implementation returned.
Thanks, I'll give it a poke later and see what happens.
has
_______________________________________________
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