Hi Manajit,
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.
--Semyon
On 01/04/2018 10:22 AM, Manajit Halder wrote:
Hi Semyon,
Fix for issue JDK-8080729
<https://bugs.openjdk.java.net/browse/JDK-8080729> has caused this
regression due to changes in method setVisible(boolean visible) in
file CPlatformWindow.java
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.
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.
Below code causes the regression:
*CWrapper.NSWindow.orderWindow(ptr, CWrapper.NSWindow.NSWindowAbove,
ownerPtr);*
*//CWrapper.NSWindow.addChildWindow(ownerPtr, ptr,
CWrapper.NSWindow.NSWindowAbove);*
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.
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.
Regards,
Manajit
On 02-Jan-2018, at 11:30 PM, Semyon Sadetsky
<semyon.sadet...@oracle.com <mailto:semyon.sadet...@oracle.com>> wrote:
Hi Manajit,
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.
--Semyon
On 12/25/2017 02:42 AM, Manajit Halder wrote:
Hi Semyon,
Regression is cause by JDK-8080729
<https://bugs.openjdk.java.net/browse/JDK-8080729>. 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 retargeting 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.
Regards,
Manajit
On 08-Dec-2017, at 9:55 PM, semyon.sadet...@oracle.com
<mailto:semyon.sadet...@oracle.com> wrote:
Hi Manajit,
Can you provide information which fix caused the regression?
--Semyon
On 12/8/17 5:53 AM, Manajit Halder wrote:
Hi All,
Kindly review the following Swing fix.
Bug: https://bugs.openjdk.java.net/browse/JDK-8189253
Webrev: http://cr.openjdk.java.net/~mhalder/8189253/webrev.00/
<http://cr.openjdk.java.net/%7Emhalder/8189253/webrev.00/>
Cause:
Issue was due to retargeting of mouse enter exit events.
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.
Fix:
Retargeting of events is not done in-between MOUSE_PRESS and
MOUSE_RELEASE.
Regards,
Manajit