<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