RFR: 8367376: Bad ButtonUI prevents other components from updating when system changes desktop properties [v6]

Prasanta Sadhukhan psadhukhan at openjdk.org
Tue Oct 7 07:24:56 UTC 2025


On Sat, 27 Sep 2025 04:40:03 GMT, Jeremy Wood <jwood at openjdk.org> wrote:

>> Previously:
>> 
>> If DesktopProperty#updateAllUIs threw an exception, we would never reset the update-pending property to false. This means any subsequent call to `updateUI()` would not attempt to call `updateAllUIs()`
>> 
>> With this change:
>> Subsequent calls to DesktopProperty#updateUI() can still trigger at least one call to updateAllUIs().
>
> Jeremy Wood has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 12 additional commits since the last revision:
> 
>  - 8367376: test all installed L&F's
>    
>    This is in response to:
>    https://git.openjdk.org/jdk/pull/27205#discussion_r2382574446
>  - Merge branch 'master' into JDK-8367376
>  - 8367376: use same try/finally pattern for SynthL&F
>    
>    This is in response to:
>    https://github.com/openjdk/jdk/pull/27205#discussion_r2357719216
>  - 8367376: use same try/finally pattern for MetalL&F
>    
>    This is in response to:
>    https://github.com/openjdk/jdk/pull/27205#discussion_r2357716063
>  - 8367376: remove setLookAndFeel
>    
>    This was probably left over from an earlier draft; this test uses the TestDesktopProperty class so it doesn't rely on/test any particular L&F.
>  - 8367376: rename test file
>    
>    This is in response to:
>    https://github.com/openjdk/jdk/pull/27205#discussion_r2356674752
>  - 8367376: add new line to end of file
>    
>    This is in response to:
>    https://github.com/openjdk/jdk/pull/27205#discussion_r2356666306
>  - 8367376: changing field names
>    
>    This is in response to:
>    https://github.com/openjdk/jdk/pull/27205#discussion_r2356664929
>  - Update test/jdk/com/sun/java/swing/plaf/Test8367376.java
>    
>    Co-authored-by: Alexey Ivanov <alexey.ivanov at oracle.com>
>  - Update test/jdk/com/sun/java/swing/plaf/Test8367376.java
>    
>    Co-authored-by: Alexey Ivanov <alexey.ivanov at oracle.com>
>  - ... and 2 more: https://git.openjdk.org/jdk/compare/86c2a13e...1b669f8d

test/jdk/com/sun/java/swing/plaf/DesktopPropertyResetPendingFlagTest.java line 92:

> 90:         Toolkit.getDefaultToolkit().getSystemEventQueue().push(newEventQueue);
> 91: 
> 92:         for (UIManager.LookAndFeelInfo info :

UIManager import is missing

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

PR Review Comment: https://git.openjdk.org/jdk/pull/27205#discussion_r2409647336


More information about the client-libs-dev mailing list