<Swing Dev> RFR: 8253266 : JList and JTable constructors should clear OPAQUE_SET before calling updateUI [v2]
Tejpal Rebari
trebari at openjdk.java.net
Thu Mar 25 08:03:21 UTC 2021
> Hi All,
> Please review the following fix for jdk17.
>
> Issue : LookAndFeel.installProperty(list, "opaque", false) is not able to set the opaque property for JList and JTable.
> LookAndFeel.installProperty calls the setUIProperty, and setUIProperty checks for OPAQUE_SET to change the opaque property as requested by the client.
> OPAQUE_SET is always set to true when there is call to setOpaque(boolean).So when the constructor calls setOpaque(true) OPAQUE_SET is set to true and wont allow the setUIProperty to change the opaque property.
> installProperty should work as the opaque property is not set by the client.
>
> Fix. Fix is to remove the call to the setOpaque() from the constructor of JList and JTable. This will allow the client to change the opaque property calling LookAndFeel.installProperty() when the property is already not set.
>
> Test : Added a test to check the same. Also tested internal tests which all are passing.
> Link is in JBS.
Tejpal Rebari has updated the pull request incrementally with one additional commit since the last revision:
Added default value check for opaque property
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/3167/files
- new: https://git.openjdk.java.net/jdk/pull/3167/files/aafac8f2..eec8b913
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3167&range=01
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3167&range=00-01
Stats: 11 lines in 1 file changed: 11 ins; 0 del; 0 mod
Patch: https://git.openjdk.java.net/jdk/pull/3167.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/3167/head:pull/3167
PR: https://git.openjdk.java.net/jdk/pull/3167
More information about the swing-dev
mailing list