about summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorNikolay Amiantov <ab@fmap.me>2016-10-02 23:13:18 +0300
committerNikolay Amiantov <ab@fmap.me>2016-10-02 23:57:10 +0300
commit9d7c9cc32e9d7a382707c3d62580f9416b9c5b09 (patch)
treeafc71008bd96e982c931e7a860dff8839e08f56a /pkgs/development
parenta15c9433376c190b6592f0089157d5ba85b60e5f (diff)
downloadnixlib-9d7c9cc32e9d7a382707c3d62580f9416b9c5b09.tar
nixlib-9d7c9cc32e9d7a382707c3d62580f9416b9c5b09.tar.gz
nixlib-9d7c9cc32e9d7a382707c3d62580f9416b9c5b09.tar.bz2
nixlib-9d7c9cc32e9d7a382707c3d62580f9416b9c5b09.tar.lz
nixlib-9d7c9cc32e9d7a382707c3d62580f9416b9c5b09.tar.xz
nixlib-9d7c9cc32e9d7a382707c3d62580f9416b9c5b09.tar.zst
nixlib-9d7c9cc32e9d7a382707c3d62580f9416b9c5b09.zip
openjdk8: add a patch to use GTK when available by default
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/compilers/openjdk/8.nix2
-rw-r--r--pkgs/development/compilers/openjdk/swing-use-gtk.patch26
2 files changed, 28 insertions, 0 deletions
diff --git a/pkgs/development/compilers/openjdk/8.nix b/pkgs/development/compilers/openjdk/8.nix
index fb0a20b865ab..2969dab92260 100644
--- a/pkgs/development/compilers/openjdk/8.nix
+++ b/pkgs/development/compilers/openjdk/8.nix
@@ -89,6 +89,8 @@ let
     ] ++ lib.optionals (!minimal && enableInfinality) [
       ./004_add-fontconfig.patch
       ./005_enable-infinality.patch
+    ] ++ lib.optionals (!minimal && enableGnome2) [
+      ./swing-use-gtk.patch
     ];
 
     preConfigure = ''
diff --git a/pkgs/development/compilers/openjdk/swing-use-gtk.patch b/pkgs/development/compilers/openjdk/swing-use-gtk.patch
new file mode 100644
index 000000000000..9538aade6726
--- /dev/null
+++ b/pkgs/development/compilers/openjdk/swing-use-gtk.patch
@@ -0,0 +1,26 @@
+diff -ru3 a/jdk/src/share/classes/javax/swing/UIManager.java b/jdk/src/share/classes/javax/swing/UIManager.java
+--- a/jdk/src/share/classes/javax/swing/UIManager.java	2016-07-26 00:41:37.000000000 +0300
++++ b/jdk/src/share/classes/javax/swing/UIManager.java	2016-10-02 22:46:01.890071761 +0300
+@@ -607,11 +607,9 @@
+         if (osType == OSInfo.OSType.WINDOWS) {
+             return "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
+         } else {
+-            String desktop = AccessController.doPrivileged(new GetPropertyAction("sun.desktop"));
+             Toolkit toolkit = Toolkit.getDefaultToolkit();
+-            if ("gnome".equals(desktop) &&
+-                    toolkit instanceof SunToolkit &&
+-                    ((SunToolkit) toolkit).isNativeGTKAvailable()) {
++            if (toolkit instanceof SunToolkit &&
++                    ((SunToolkit) toolkit).isNativeGTKAvailable()) {
+                 // May be set on Linux and Solaris boxs.
+                 return "com.sun.java.swing.plaf.gtk.GTKLookAndFeel";
+             }
+@@ -1341,7 +1339,7 @@
+             lafName = (String) lafData.remove("defaultlaf");
+         }
+         if (lafName == null) {
+-            lafName = getCrossPlatformLookAndFeelClassName();
++            lafName = getSystemLookAndFeelClassName();
+         }
+         lafName = swingProps.getProperty(defaultLAFKey, lafName);
+