`JTree.updateUI` calculate item sizes from the cell renderer, but it doesn't call `updateUI `on the cell renderer until afterwards. This leads to incorrect size calculation, which is observed when we switch from one L&F to another where it is seen that all tree items are slightly too cramped, with too little space between rows and text are abbreviated. Fix is to ensure `JTree.updateUI` update the cell renderer before updating the UI. CI testing is ok..
Before fix <img width="142" height="146" alt="image" src="https://github.com/user-attachments/assets/95d43e47-122a-4ca4-8a3f-f4bf5c1d3f43" /> After fix <img width="145" height="125" alt="image" src="https://github.com/user-attachments/assets/068b5988-119c-4b99-be27-1ef5d52a28a2" /> ------------- Commit messages: - 8042054: JTree.updateUI uses out-of-date item size information - 8042054: JTree.updateUI uses out-of-date item size information Changes: https://git.openjdk.org/jdk/pull/28258/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28258&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8042054 Stats: 105 lines in 2 files changed: 102 ins; 2 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/28258.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/28258/head:pull/28258 PR: https://git.openjdk.org/jdk/pull/28258
