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

Semyon Sadetsky semyon.sadetsky at oracle.com
Mon Jan 8 21:54:59 UTC 2018


Hi Matthias,

Thank you for your e-mail.

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

http://mail.openjdk.java.net/pipermail/swing-dev/2017-December/008077.html

--Semyon


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
> *
>
> Please consider the impact on the environment before printing this e-mail.
> *
>
> Pflichtangaben/Mandatory Disclosure Statement:
> http://www.sap.com/company/legal/impressum.epx/ 
> <http://www.sap.com/company/legal/impressum.epx>
>
> 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/20180108/34c7da76/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 80020 bytes
Desc: not available
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20180108/34c7da76/image001-0001.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image002.jpg
Type: image/jpeg
Size: 79181 bytes
Desc: not available
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20180108/34c7da76/image002-0001.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image003.jpg
Type: image/jpeg
Size: 78332 bytes
Desc: not available
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20180108/34c7da76/image003-0001.jpg>


More information about the awt-dev mailing list