<AWT Dev> [9] Review request for 8044614: [macosx] Focus issue with 2 applets in firefox

Alexander Scherbatiy alexandr.scherbatiy at oracle.com
Fri Jul 4 10:26:05 UTC 2014


On 7/3/2014 2:25 PM, Alexander Scherbatiy wrote:
> On 7/3/2014 1:15 PM, dmitry markov wrote:
>> Hi Alexandr,
>>
>> Thank you for review.
>> For the use case you described - when we move back to the first 
>> browser window with 3 applets, the first applet (not the second one) 
>> will receive the focus. This behavior is incorrect, since the second 
>> applet should receive the focus.
>> I have updated the fix, please find new version here: 
>> http://cr.openjdk.java.net/~dmarkov/8044614/jdk9/webrev.01/
>> Now we store the information about focused applet when browser window 
>> is deactivated and restore the focus to the previously focused applet 
>> when browser window becomes active again
>
>     The case can be more complicated with some browsers where each of 
> them has several applets.
>     It seems there should be a map between a browser and it's focused 
> applet.

    I see that your fix solves these cases.

    One more problem can be with the WindowsFocusEvents order.
    Is it guarantee that order of events WindowsFocusEvent 
(parentwindow=false) to one browser and WindowsFocusEvent 
(parentWindow=true)
    for other browser can't be changed?

   I would suggest to  do a small refactoring.
   Something like focusedWindow to globalFocusedWindow, 
previousFocusedWindow to pluginFocusedWindow, add method like 
isPluginFocused(...)
   and use conditional operator '?' for globalFocusedWindow setting.

   Thanks,
   Alexandr.


>
>
>     Is it possible to add a manual test for the fix?
>
>    Thanks,
>    Alexandr.
>
>>
>> Thanks,
>> Dmitry
>>
>> On 02/07/2014 16:36, Alexander Scherbatiy wrote:
>>>
>>>  Let's assume one browser has 3 applets where the second applet has 
>>> focus.
>>>  I click on the second browser with an applet (the applet receives 
>>> the focus) and then click on the first browser back.
>>>  Should the second applet in the first browser receive the focus?
>>>
>>>  Thanks,
>>>  Alexandr.
>>>
>>> On 7/2/2014 2:45 PM, dmitry markov wrote:
>>>> Hello,
>>>>
>>>> Could you review the fix for jdk9, please?
>>>>
>>>>     bug: https://bugs.openjdk.java.net/browse/JDK-8044614
>>>>     webrev: 
>>>> http://cr.openjdk.java.net/~dmarkov/8044614/jdk9/webrev.00/
>>>>
>>>> Problem description: on Mac OSX when switching between several 
>>>> applets running in separate browser's windows, the applet in active 
>>>> window does not receive focus.
>>>> Fix: the method CEmbeddedFrame.handleWindowFocusEvent() should be 
>>>> modified. It has to detect the switching between browser's windows 
>>>> and update focusedWindow field accordingly.
>>>>
>>>> Thanks,
>>>> Dmitry
>>>
>>
>



More information about the awt-dev mailing list