On Wed, 10 Jul 2024 22:12:59 GMT, Alisen Chung <[email protected]> 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/com/sun/java/swing/plaf/gtk/GTKPainter.java > line 977: > >> 975: >> 976: // Fill the tab rect area >> 977: g.fillRect(x, y, w, h); > > I see that the original fix added these lines to GTKPainter. If the fix is > being moved individual L&F files is this still needed? Yeah , it is still needed to paint the tab area correctly. Only the condition check part is being moved to individual L&F files in this PR. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20091#discussion_r1673432381
