On Wed, 24 Mar 2021 06:17:04 GMT, Tejpal Rebari <treb...@openjdk.org> wrote:

> 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.

This pull request has now been integrated.

Changeset: 39719da9
Author:    Tejpal Rebari <treb...@openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/39719da9
Stats:     161 lines in 7 files changed: 156 ins; 5 del; 0 mod

8253266: JList and JTable constructors should clear OPAQUE_SET before calling 
updateUI

Reviewed-by: psadhukhan, serb

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

PR: https://git.openjdk.java.net/jdk/pull/3167

Reply via email to