Theme JIDE-specific UIManager keys so JideTabbedPane reads dark colors

The Now Playing / Map / Tuners / Playlist Editor / Details / Events /
Messages / Channel tabs are JIDE JideTabbedPane components and their UI
delegate reads JideTabbedPane.* UIManager keys, not the standard
TabbedPane.* keys.  The previous overrides only set the standard keys so
the tabs were still rendering with JIDE's Metal-era dark foreground on
the now-dark background.

Override the JIDE-specific text foreground keys
(JideTabbedPane.foreground, .selectedTabTextForeground,
.unselectedTabTextForeground, .activeTabTextForeground) along with the
matching background and shadow keys.  Also theme JideSplitPane,
JideButton and JideLabel keys for consistency.
This commit is contained in:
Akumas_Coffin_
2026-05-14 20:52:35 +10:00
parent 9bf35fcaaa
commit af1896ff4c

View File

@@ -438,6 +438,39 @@ public class ThemeManager
//ToolTip needs to stand out from the panel.
UIManager.put("ToolTip.background", bgRaised);
UIManager.put("ToolTip.foreground", fgPrimary);
//JIDE components (JideTabbedPane, JideSplitPane, JideButton, etc.) read their colors
//from JIDE-specific UIManager keys, not the standard Swing keys. Set those too so
//tabs and other JIDE widgets render with the same palette.
UIManager.put("JideTabbedPane.background", bgPanel);
UIManager.put("JideTabbedPane.foreground", fgPrimary);
UIManager.put("JideTabbedPane.tabAreaBackground", bgPanel);
UIManager.put("JideTabbedPane.selectedTabBackground", bgRaised);
UIManager.put("JideTabbedPane.activeTabBackground", bgRaised);
UIManager.put("JideTabbedPane.tabListBackground", bgRaised);
UIManager.put("JideTabbedPane.selectedTabTextForeground", fgSelection);
UIManager.put("JideTabbedPane.unselectedTabTextForeground", fgPrimary);
UIManager.put("JideTabbedPane.activeTabTextForeground", fgSelection);
UIManager.put("JideTabbedPane.shadow", border);
UIManager.put("JideTabbedPane.darkShadow", border);
UIManager.put("JideTabbedPane.light", bgRaised);
UIManager.put("JideTabbedPane.highlight", bgRaised);
UIManager.put("JideSplitPane.background", bgPanel);
UIManager.put("JideSplitPaneDivider.background", bgPanel);
UIManager.put("JideSplitPane.dividerColor", border);
UIManager.put("JideButton.background", bgRaised);
UIManager.put("JideButton.foreground", fgPrimary);
UIManager.put("JideButton.selectedBackground", bgSelection);
UIManager.put("JideButton.selectedForeground", fgSelection);
UIManager.put("JideButton.shadow", border);
UIManager.put("JideButton.darkShadow", border);
UIManager.put("JideButton.light", bgRaised);
UIManager.put("JideButton.highlight", bgRaised);
UIManager.put("JideLabel.background", bgPanel);
UIManager.put("JideLabel.foreground", fgPrimary);
}
private void pruneDeadReferencesAndCheckPresent(Scene scene)