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

Harshitha Onkar honkar at openjdk.org
Fri Apr 14 16:33:35 UTC 2023


On Fri, 7 Apr 2023 17:57:41 GMT, Harshitha Onkar <honkar at openjdk.org> wrote:

>> 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.
>
> Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision:
> 
>   added syncLocationToWindowManager(), changed literals to vars

@prrace Please review

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

PR Comment: https://git.openjdk.org/jdk/pull/13380#issuecomment-1508926025



More information about the client-libs-dev mailing list