<Swing Dev> RFR: 8263496: MetalHighContrastTheme.getControlHighlight cleanup

Prasanta Sadhukhan psadhukhan at openjdk.java.net
Thu Mar 25 04:16:47 UTC 2021


On Wed, 24 Mar 2021 17:51:44 GMT, Alexander Zvegintsev <azvegint at openjdk.org> wrote:

>> SonarCloud reports the potential issue with MetalHighContrastTheme.getControlHighlight where `controlHighlight ` field is not used and the getControlHighlight() uses secondary field.
>> public ColorUIResource getControlHighlight() {
>>         // This was super.getSecondary3();
>>         return secondary2;
>>     } 
>> Removed the unused field.
>
> src/java.desktop/share/classes/javax/swing/plaf/metal/MetalHighContrastTheme.java line 55:
> 
>> 53:                               255, 255, 255);
>> 54:     private static final ColorUIResource controlHighlight = new
>> 55:                               ColorUIResource(102, 102, 102);
> 
> I didn't check it on Windows(AFAICS it is used for Windows only), but I've done a quick check how it looks on Linux with both colors.
> 
> Using `controlHighlight`  in `getControlHighlight()`:
> ![using controlHighlight](https://user-images.githubusercontent.com/77687766/112357602-bf00dd80-8ce0-11eb-9a8d-0faeb6d1940b.png)
> 
> Using `secondary2`  in `getControlHighlight()`:
> ![using secondary2](https://user-images.githubusercontent.com/77687766/112357736-db9d1580-8ce0-11eb-8e1a-527ec327874f.png)
> 
> And it seems that the option with unused `controlHighlight` color is more fits the definition of high contrast.
> 
> Have you checked why its usage was removed?

As far I see in the history of this file, it was `secondary2` that was used from beginning, so I kept it and removed the unused.

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

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


More information about the swing-dev mailing list