<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Hi Manajit,</p>
<p>I could reproduce similar behaviour on Linux when mouse is
dragged to another component with the left button pressed and then
the right button is immediately pressed. The popup is triggered
by the same logic despite it isn't configured for the component. <br>
</p>
--Semyon<br>
<br>
<div class="moz-cite-prefix">On 01/04/2018 10:22 AM, Manajit Halder
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:F10C8291-1722-4618-B2B5-C2DB14E7486C@oracle.com">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class="">Hi Semyon,</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69); min-height: 14px;"
class=""><br class="">
</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class="">Fix for
issue <a
href="https://bugs.openjdk.java.net/browse/JDK-8080729"
class="" moz-do-not-send="true"><span style="color: rgb(228,
175, 10);" class="">JDK-8080729</span></a> has caused this
regression due to changes in method setVisible(boolean visible)
in file CPlatformWindow.java</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class="">orderWindow
is causing the issue here, if we revert to addChildWindow then
the issue is not observed but then the fix for issue JDK-8080729
fails.</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class="">Before this
change the child window used to be added on to the parent as
shown below in the commented code. But after the change child
window is ordered above the parent.</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class=""><br class="">
</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class="">Below code
causes the regression:</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69); min-height: 14px;"
class=""><br class="">
</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class=""><b class="">CWrapper.NSWindow.orderWindow(ptr,
CWrapper.NSWindow.NSWindowAbove, ownerPtr);</b></div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class=""><b class="">//CWrapper.NSWindow.addChildWindow(ownerPtr,
ptr, CWrapper.NSWindow.NSWindowAbove);</b></div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69); min-height: 14px;"
class=""><br class="">
</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class="">Debugging
further I found that if we use orderWindow then the new window
is considered as new graphics device in the method notifyReshape
in LWWindowPeer.java (the method updateGraphicsDevice() returns
true) and is the difference between using orderWindow and
addChildWindow.</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69); min-height: 14px;"
class=""><br class="">
</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class="">Since the
option to add child window is between choosing oderWindow and
addChildWindow we don’t have any option to do the fix in the Mac
OS native code.</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class=""><br class="">
</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class="">Regards,</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class="">Manajit</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class=""><br class="">
</div>
<div style="margin: 0px; line-height: normal; font-family:
'Helvetica Neue'; color: rgb(69, 69, 69);" class=""><br class="">
</div>
<div>
<blockquote type="cite" class="">
<div class="">On 02-Jan-2018, at 11:30 PM, Semyon Sadetsky
<<a href="mailto:semyon.sadetsky@oracle.com" class=""
moz-do-not-send="true">semyon.sadetsky@oracle.com</a>>
wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8" class="">
<div text="#000000" bgcolor="#FFFFFF" class="">
<p class="">Hi Manajit,</p>
<p class="">JDK-8080729 bug was Mac OS specific issue and
its fix changed the Mac OS code only. Nevertheless you
are suggesting to fix the regression in generic code.
This need to be explained somehow.</p>
<p class="">--Semyon<br class="">
</p>
<div class="moz-cite-prefix">On 12/25/2017 02:42 AM,
Manajit Halder wrote:<br class="">
</div>
<blockquote type="cite"
cite="mid:C77A97FC-2163-455F-847D-C590D3B5D522@oracle.com"
class="">
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8" class="">
<font class="" size="2">Hi Semyon,</font>
<div class=""><font class="" size="2"><br class="">
</font></div>
<div class=""><font class="" size="2">Regression is
cause by <a
href="https://bugs.openjdk.java.net/browse/JDK-8080729"
class="" moz-do-not-send="true">JDK-8080729</a>.
The fix can’t be reversed since it is the choice
between addChildWindow or orderWindow. Went through
code flow related to the issue but didn’t find any
other better place in code to handle this issue. The
best way to fix the issue would be to avoid r<span
style="background-color: rgb(255, 255, 255);"
class="">etargeting of events (MOUSE_ENTER and
MOUSE_EXIT) between MOUSE_PRESS and MOUSE_RELEASE
on the parent window (when the mouse is actually
on the child window). Therefore request you to
review the webrev.00.</span></font></div>
<div class=""><br class="">
</div>
<div class="">
<div class="" style="margin: 0px; line-height: normal;
background-color: rgb(255, 255, 255);"><font
class="" size="2">Regards,</font></div>
<div class="" style="margin: 0px; line-height: normal;
background-color: rgb(255, 255, 255);"><font
class="" size="2">Manajit</font></div>
<div class="" style="margin: 0px; line-height: normal;
background-color: rgb(255, 255, 255);"><font
class="" size="2"><br class="">
</font></div>
</div>
<div class="">
<blockquote type="cite" class="">
<div class="">On 08-Dec-2017, at 9:55 PM, <a
href="mailto:semyon.sadetsky@oracle.com"
class="" moz-do-not-send="true">semyon.sadetsky@oracle.com</a>
wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<meta content="text/html; charset=utf-8"
http-equiv="Content-Type" class="">
<div bgcolor="#FFFFFF" text="#000000" class="">
<p class="">Hi Manajit,</p>
<p class="">Can you provide information which
fix caused the regression?</p>
<p class="">--Semyon<br class="">
</p>
<br class="">
<div class="moz-cite-prefix">On 12/8/17 5:53 AM,
Manajit Halder wrote:<br class="">
</div>
<blockquote
cite="mid:E1445698-445B-4542-98C1-1D82A4A182C9@oracle.com"
type="cite" class="">
<meta http-equiv="Content-Type"
content="text/html; charset=utf-8" class="">
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69);" class="">Hi All,</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class=""><br
class="">
</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69);" class="">Kindly review the
following Swing fix.</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class=""><br
class="">
</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(228, 175, 10);" class=""><span
style="color: #454545" class="">Bug: <span
style="color: #e4af0a" class=""><a
moz-do-not-send="true"
href="https://bugs.openjdk.java.net/browse/JDK-8189253"
class="">https://bugs.openjdk.java.net/browse/JDK-8189253</a></span></span></div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(228, 175, 10);" class=""><span
style="color: #454545" class="">Webrev: <span
style="color: #e4af0a" class=""><a
moz-do-not-send="true"
href="http://cr.openjdk.java.net/%7Emhalder/8189253/webrev.00/"
class="">http://cr.openjdk.java.net/~mhalder/8189253/webrev.00/</a></span></span></div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class=""><br
class="">
</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class="">Cause:Â </div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>Issue
was due to retargeting of mouse enter exit
events. </div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>MOUSE_ENTER
and MOUSE_EXIT events were sent on the
parent window (JFrame) in between
MOUSE_PRESS and MOUSE_RELEASE events on the
modeless JDialog.</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class=""><br
class="">
</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class="">Fix:</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class=""><span class="Apple-tab-span" style="white-space:pre"> </span>Retargeting
of events is not done in-between MOUSE_PRESS
and MOUSE_RELEASE.</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class=""><br
class="">
</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class="">Regards,</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class="">Manajit</div>
<div style="margin: 0px; line-height: normal;
font-family: 'Helvetica Neue'; color:
rgb(69, 69, 69); min-height: 14px;" class=""><br
class="">
</div>
</blockquote>
<br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
</blockquote>
<br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
</blockquote>
<br>
</body>
</html>