On Fri, 11 Oct 2024 16:54:20 GMT, Alexey Ivanov <aiva...@openjdk.org> wrote:

> At first, I noticed bug4490179.java didn't release mouse button 1, which 
> could affect the following tests.
> 
> I started looking at the test and updated it to use `CountDownLatch` instead 
> of delays.
> 
> @azvegint handled releasing mouse button 1 in 
> https://github.com/openjdk/jdk/pull/19339#discussion_r1609201116.
> 
> The updated version first verifies `mouseButton3Released` event is received 
> and ensures `actionPerformed` is not received at this time.
> 
> Then mouse button is released; this should trigger two events: 
> `mouseButton1Released` and `actionPerformed`. It is verified that these 
> events are received.
> 
> I kept debugging prints, they help understanding which actions lead to which 
> events.
> 
> The updated test reproduces the original, it is easily verified using Java 8; 
> the updated test is stable in CI.
> 
> 
> The `javax/swing/JButton/bug4490179.java` test is also modified in 
> https://github.com/openjdk/jdk/pull/20861, @mrserb, could you take a look? I 
> was going to suggested factoring out the changes to this test from #20861, 
> yet I modified it myself. I realised it when I started creating the PR.

This pull request has now been integrated.

Changeset: 8174cbd5
Author:    Alexey Ivanov <aiva...@openjdk.org>
URL:       
https://git.openjdk.org/jdk/commit/8174cbd5cb797a80d48246a686897ef6fe64ed57
Stats:     88 lines in 1 file changed: 66 ins; 3 del; 19 mod

8341978: Improve JButton/bug4490179.java

Use latch to synchronize actions in the test.
Verify mouseButton3Released does not trigger actionPerformed
while mouse button 1 is pressed.
Ensure mouse button 1 is released.
Verify releasing mouse button 1 triggers actionPerformed.

Reviewed-by: azvegint, achung, serb

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

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

Reply via email to