RFR: JDK-8282232: [Win] GetMousePositionWithPopup test fails due to wrong mouse position

Harshitha Onkar honkar at openjdk.org
Thu Apr 6 23:56:40 UTC 2023


This test issue was due to race condition that occured when using `-Dsun.java2d.uiScale >= 2`.
As a result it led to incorrect mouse position being compared as opposed to the updated mouse position after the final mouse move event.

Following is the event log before and after fix.

**Before fix:**

1st mouse move
2nd mouse move
Frame-1 Mouse Event
Frame-2 Mouse Event
java.awt.Point[x=29,y=29]


**After fix:**

1st mouse move
2nd mouse move
Frame-1 Mouse Event
3rd mouse move
Frame-2 Mouse Event
java.awt.Point[x=50,y=50]


Earlier Frame-2's mouseMoved() was being triggered on Robot's 2nd mouse move instead of 3rd mouse move. To fix it, the mouseMotionListener for Frame-2 is now added after Robot's 2nd mouse move is processed to avoid the race condition.

The updated test fix is checked on multiple uiScales including fractional scales for windows platform.
CI testing works as expected on all platforms.

-------------

Commit messages:
 - GetMousePositionWithPopup test update

Changes: https://git.openjdk.org/jdk/pull/13380/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=13380&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8282232
  Stats: 88 lines in 1 file changed: 40 ins; 16 del; 32 mod
  Patch: https://git.openjdk.org/jdk/pull/13380.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/13380/head:pull/13380

PR: https://git.openjdk.org/jdk/pull/13380



More information about the client-libs-dev mailing list