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