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