RFR: 8335130: The test "javax/swing/plaf/synth/ComponentsOrientationSupport/5033822/bug5033822.java" fails because the background color of the tabs is displayed incorrectly.

Prasanta Sadhukhan psadhukhan at openjdk.org
Fri Aug 2 04:37:32 UTC 2024


On Tue, 9 Jul 2024 06:13:15 GMT, Abhishek Kumar <abhiscxk at openjdk.org> wrote:

> Issue is due to the condition added for the opaque property of SynthTabbedPane in [JDK-8226990](https://bugs.openjdk.org/browse/JDK-8226990). The previous fix for GTK and Nimbus was handled commonly in `SynthTabbedPaneUI` class to render the tabs based on opaque property. Since the Synth package is responsible to create a custom L&F using user defined XML file. In this test the L&F is fetched through the XML file and when `SynthTabbedPaneUI` APIs are invoked for the tab rendering, it is not correctly rendered. Setting the opaque property to true also doesn't help as the selected tab is rendered incorrectly. The proposed fix is to move the fix to GTK and Nimbus specific class and that will not cause any impact on custom xml based L&F.

src/java.desktop/share/classes/javax/swing/plaf/synth/SynthTabbedPaneUI.java line 656:

> 654:         }
> 655: 
> 656:         tabContext.getPainter().paintTabbedPaneTabBackground(tabContext, g,

what about the check `tabPane.isOpaque()))` in l764, will it still be needed?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20091#discussion_r1687642165


More information about the client-libs-dev mailing list