<AWT Dev> Unwanted MOUSE_MOVED break dispatching MOUSE_RELEASED to the right component

Langer, Christoph christoph.langer at sap.com
Fri Feb 23 09:01:26 UTC 2018

Hi Semyon,

yes, I had a quick try on it yesterday but I couldn’t even get it reproduced on my personal infrastructure. Neither on Mac nor on Windows. The colleagues say that the likelihood of this error is a quite scenario/hardware specific… Plus, I’m not an expert in the GUI area. So I’m hoping on some Oracle/community expertise here…


From: Semyon Sadetsky [mailto:semyon.sadetsky at oracle.com]
Sent: Donnerstag, 22. Februar 2018 19:16
To: Langer, Christoph <christoph.langer at sap.com>; awt-dev at openjdk.java.net
Subject: Re: <AWT Dev> Unwanted MOUSE_MOVED break dispatching MOUSE_RELEASED to the right component

Thank you, Christoph. It will be prioritized and assigned to Oracle engineer soon. If you are interested to get it evaluated more quickly feel free to propose a patch on this alias and it will be reviewed and sponsored.


On 02/22/2018 04:54 AM, Langer, Christoph wrote:

I’ve opened a bug for this: https://bugs.openjdk.java.net/browse/JDK-8198550

Best regards

From: Semyon Sadetsky [mailto:semyon.sadetsky at oracle.com]
Sent: Dienstag, 9. Januar 2018 17:46
To: Weidemann, Matthias <matthias.weidemann at sap.com><mailto:matthias.weidemann at sap.com>; awt-dev at openjdk.java.net<mailto:awt-dev at openjdk.java.net>; Langer, Christoph <christoph.langer at sap.com><mailto:christoph.langer at sap.com>
Cc: Woersinger, Rolf-Martin <rolf-martin.woersinger at sap.com><mailto:rolf-martin.woersinger at sap.com>; Denkel, Christian <christian.denkel at sap.com><mailto:christian.denkel at sap.com>
Subject: Re: <AWT Dev> Unwanted MOUSE_MOVED break dispatching MOUSE_RELEASED to the right component

Hello Matthias,

If so, please, file a bug to https://bugreport.java.com/


On 01/09/2018 12:09 AM, Weidemann, Matthias wrote:
Hello Sadetsky,

The discussion you linked to me seems to be a similar problem, but the fix discussed there happens specifically in the method Container.retargetMouseEnterExit(…). The problem we have happens in MOUSE_MOVED, so while this fix might fix the problem in the discussion it won’t fix ours.

Kind Regards,

From: Semyon Sadetsky <semyon.sadetsky at oracle.com><mailto:semyon.sadetsky at oracle.com>
Date: Monday, January 8, 2018 at 10:55 PM
To: "Weidemann, Matthias" <matthias.weidemann at sap.com><mailto:matthias.weidemann at sap.com>, "awt-dev at openjdk.java.net"<mailto:awt-dev at openjdk.java.net> <awt-dev at openjdk.java.net><mailto:awt-dev at openjdk.java.net>
Cc: "Woersinger, Rolf-Martin" <rolf-martin.woersinger at sap.com><mailto:rolf-martin.woersinger at sap.com>, "Denkel, Christian" <christian.denkel at sap.com><mailto:christian.denkel at sap.com>
Subject: Re: <AWT Dev> Unwanted MOUSE_MOVED break dispatching MOUSE_RELEASED to the right component

Hi Matthias,

Thank you for your e-mail.

It seems a fix for this bug is already under discussion on this thread:



On 01/04/2018 04:56 AM, Weidemann, Matthias wrote:
Hello everyone,

we found a rare occurrence of a bug in JDK1.8 and onwards, might also occur earlier but we didn’t check for that.

In some instances MOUSE_MOVED events occur between a MOUSE_PRESSED and a MOUSE_RELEASED. In Container.java on MOUSE_PRESSED the component is remembered in an instance variable to send a corresponding MOUSE_RELEASED to it.
The same instance variable is used for the MOUSE_MOVED Event, so if there are MOUSE_MOVED Events between a MOUSE_PRESSED and MOUSE_RELEASED the corresponding MOUSE_RELEASE will be reported to the "wrong" component.

I attached a simple example to replicate the error.

I included hardware specifications, because the occurrence fluctuates with the hardware used. We got the best results to reproduce with the Macbook and the magic mouse shown below. With a trackpad it is almost impossible to replicate.

How to: Move the mouse in the blue rectangle VERY FAST from left to right or vice versa. Release the mousebutton near the end of the drag, while you are still in motion.

We are using a workaround for this, the same custom queue built into the example. If we are between MOUSE_PRESSED and MOUSE_RELEASED we do not dispatch MOUSE_MOVED Events.
We would still like to see this bug fixed or at least have different instance variables for MOUSE_PRESSED and MOUSE_MOVED so we get the MOUSE_RELEASE on the right component.

Kind Regards,
Matthias Weidemann

Matthias Weidemann
Software Developer, PI Technology UxP UI P&S (SE) Supp
SAP SE, Opelstr. 6, 68789 St. Leon - Rot, Germany

T +49 6227 7-45771 , E matthias.weidemann at sap.com<mailto:matthias.weidemann at sap.com>

Please consider the impact on the environment before printing this e-mail.

Pflichtangaben/Mandatory Disclosure Statement:

Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder sonstige vertrauliche Informationen enthalten. Sollten Sie diese E-Mail irrtümlich erhalten haben, ist Ihnen eine Kenntnisnahme des Inhalts, eine Vervielfältigung oder Weitergabe der E-Mail ausdrücklich untersagt. Bitte benachrichtigen Sie uns und vernichten Sie die empfangene E-Mail.
Vielen Dank.

This e-mail may contain trade secrets or privileged, undisclosed, or otherwise confidential information. If you have received this e-mail in error, you are hereby notified that any review, copying, or distribution of it is strictly prohibited. Please inform us immediately and destroy the original transmittal.
Thank you for your cooperation

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20180223/18443597/attachment-0001.html>

More information about the awt-dev mailing list