<AWT Dev> [11] RFR 8205479: OS X: requestFocus() does not work properly for embedded frame
Dmitry Markov
dmitry.markov at oracle.com
Wed Jun 27 17:25:50 UTC 2018
Hi Sergey,
You are right, it is better to use synthesizeWindowActivation(). Please find the updated webrew here: http://cr.openjdk.java.net/~dmarkov/8205479/webrev.01/ <http://cr.openjdk.java.net/~dmarkov/8205479/webrev.01/>
Changes:
- Overrode synthesizeWindowActivation() for CEmbeddedFrame. It calls handleWindowFocusEvent() which actually activates or deactivates embedded frame.
- Added updateGlobalFocusedWindow() to CEmbeddedFrame. This method should be called when the focus is transferred to embedded frame programmatically since handleWindowFocusEvent() skips activation for non-focused embedded frames.
Thanks,
Dmitry
> On 27 Jun 2018, at 01:20, Sergey Bylokhov <Sergey.Bylokhov at oracle.com> wrote:
>
> Hi, Dmitry.
> Can you please confirm that we should not implement synthesizeWindowActivation() to achieve this behavior?
> I guess we should do the same as in CViewEmbeddedFrame which is used by SWT.
>
> On 25/06/2018 09:11, Dmitry Markov wrote:
>> Hello,
>> Could you review a fix for jdk11, please?
>> bug: https://bugs.openjdk.java.net/browse/JDK-8205479
>> webrev: http://cr.openjdk.java.net/~dmarkov/8205479/webrev.00/
>> Problem description:
>> On Mac OSX when focus is transferred to some component located at embedded frame, CPlatformEmbeddedFrame.requestWindowFocus() is called to activate owning frame. However that method does nothing, (i.e. no activation happens). As a result the focus cannot be transferred to the component because its owner is not active.
>> Fix:
>> CPlatformEmbeddedFrame.requestWindowFocus() should activate the embedded frame, (i.e. invoke notifyActivation() for the corresponding peer).
>> Thanks,
>> Dmitry
>
>
> --
> Best regards, Sergey.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20180627/bafb3ba3/attachment.html>
More information about the awt-dev
mailing list