Franklin Ronald
2023-12-01 e98267d93fefcec291b064687d3c406941996e56
UIManager.getSystemLookAndFeelClassName() returning correct com.sun.java.swing.plaf.gtk.GTKLookAndFeel class name

1 files added
2 files modified
26 ■■■■■ changed files
components/runtime/openjdk-17/Makefile 2 ●●●●● patch | view | raw | blame | history
components/runtime/openjdk-17/patches/src_java.desktop_share_classes_javax_swing_UIManager.java.patch 20 ●●●●● patch | view | raw | blame | history
components/runtime/openjdk-17/pkg5 4 ●●●● patch | view | raw | blame | history
components/runtime/openjdk-17/Makefile
@@ -14,6 +14,7 @@
# Copyright 2019 Michal Nowak
# Copyright 2021 Andreas Grueninger, Grueninger GmbH, (grueni). All rights reserved.
# Copyright 2022-2023 Niklas Poslovski
# Copyright 2023 Franklin Ronald <franklin@wiselabs.com.br>
#
include ../../../make-rules/shared-macros.mk
@@ -23,6 +24,7 @@
OPENJDK_BUILD=    8
COMPONENT_NAME=        openjdk
COMPONENT_VERSION=    $(OPENJDK_VERSION).$(OPENJDK_UPDATE).$(OPENJDK_BUILD)
COMPONENT_REVISION=    1
COMPONENT_FMRI=    runtime/java/$(COMPONENT_NAME)$(OPENJDK_VERSION)
COMPONENT_SUMMARY=    Open-source implementation of the Java Platform, Standard Edition
COMPONENT_SRC=    jdk$(OPENJDK_VERSION)u-jdk-$(OPENJDK_VERSION).$(OPENJDK_UPDATE).$(OPENJDK_BUILD)-ga
components/runtime/openjdk-17/patches/src_java.desktop_share_classes_javax_swing_UIManager.java.patch
New file
@@ -0,0 +1,20 @@
--- a/src/java.desktop/share/classes/javax/swing/UIManager.java.orig    Mon Nov 27 19:15:37 2023
+++ b/src/java.desktop/share/classes/javax/swing/UIManager.java    Mon Nov 27 19:45:00 2023
@@ -667,10 +667,16 @@
         } else {
             Toolkit toolkit = Toolkit.getDefaultToolkit();
             if (toolkit instanceof SunToolkit) {
+                String xdgCurrentDesktop = System.getenv("XDG_CURRENT_DESKTOP");
                 SunToolkit suntk = (SunToolkit)toolkit;
                 String desktop = suntk.getDesktop();
                 boolean gtkAvailable = suntk.isNativeGTKAvailable();
-                if ("gnome".equals(desktop) && gtkAvailable) {
+                if ((
+                        "mate".equalsIgnoreCase(xdgCurrentDesktop) ||
+                        "gnome".equalsIgnoreCase(xdgCurrentDesktop) ||
+                        "gnome".equals(desktop)
+                     ) && gtkAvailable
+                   ) {
                     return "com.sun.java.swing.plaf.gtk.GTKLookAndFeel";
                 }
             }
components/runtime/openjdk-17/pkg5
@@ -10,8 +10,8 @@
        "system/library",
        "system/library/c++/sunpro",
        "system/library/freetype-2",
        "system/library/g++-10-runtime",
        "system/library/gcc-10-runtime",
        "system/library/g++-13-runtime",
        "system/library/gcc-13-runtime",
        "system/library/math",
        "x11/library/libx11",
        "x11/library/libxext",