The collapsed icon for JTree is not painted using `Icon.paintIcon(Component c, 
Graphics g, int x, int y)` in GTK LAF. The collapsed icon is returned from 
BasicTreeUI class which doesn't contain any icon image whereas the expanded 
icon is returned from SynthTreeUI class and expanded icon is rendered correctly.
The proposed fix is to return collapsed icon as an object of collapsed icon 
wrapper which implements synthIcon and is similar to the expanded icon 
implementation.

Test mentioned in JBS is an applet based which is converted to main based now 
and extended for all installed LAFs on the system.

No regression caused with the fix, link is attached in JBS .

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

Commit messages:
 - JTree icon render fix

Changes: https://git.openjdk.org/jdk/pull/17294/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=17294&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8258979
  Stats: 153 lines in 2 files changed: 115 ins; 1 del; 37 mod
  Patch: https://git.openjdk.org/jdk/pull/17294.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/17294/head:pull/17294

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

Reply via email to