[Libreoffice-commits] core.git: Branch 'libreoffice-5-0' - stoc/source vcl/unx

Caolán McNamara caolanm at redhat.com
Thu Feb 18 14:49:07 UTC 2016


 stoc/source/javavm/javavm.cxx |    9 ++++++++-
 vcl/unx/gtk/app/gtksys.cxx    |    7 +++++++
 2 files changed, 15 insertions(+), 1 deletion(-)

New commits:
commit c2acf9204dae3582adc608ad28ef018c0c82f24e
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Wed Feb 17 16:09:01 2016 +0000

    Resolves: rhbz#1285356 force swing not to use gtk2 if gtk3 is loaded
    
    Reviewed-on: https://gerrit.libreoffice.org/22433
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Chris Sherlock <chris.sherlock79 at gmail.com>
    (cherry picked from commit 9f7f881d11ceb4e2534758b9507a55292ec697b0)
    
    Change-Id: I6347bf4c25ce649073afdfe4225182ab2dc84af1
    Reviewed-on: https://gerrit.libreoffice.org/22464
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt at cib.de>

diff --git a/stoc/source/javavm/javavm.cxx b/stoc/source/javavm/javavm.cxx
index 8ccd0c1..ccf51a3 100644
--- a/stoc/source/javavm/javavm.cxx
+++ b/stoc/source/javavm/javavm.cxx
@@ -538,8 +538,15 @@ void initVMConfiguration(
     }
 
     *pjvm= jvm;
-    setTimeZone(pjvm);
 
+    // rhbz#1285356, native look will be gtk2, which crashes
+    // when gtk3 is already loaded. Until there is a solution
+    // java-side force look and feel to something that doesn't
+    // crash when we are using gtk3
+    if (getenv("STOC_FORCE_SYSTEM_LAF"))
+        pjvm->pushProp("swing.systemlaf=javax.swing.plaf.metal.MetalLookAndFeel");
+
+    setTimeZone(pjvm);
 }
 
 class DetachCurrentThread: private boost::noncopyable {
diff --git a/vcl/unx/gtk/app/gtksys.cxx b/vcl/unx/gtk/app/gtksys.cxx
index f114221..7d687b2 100644
--- a/vcl/unx/gtk/app/gtksys.cxx
+++ b/vcl/unx/gtk/app/gtksys.cxx
@@ -40,6 +40,13 @@ GtkSalSystem::GtkSalSystem() : SalGenericSystem()
 {
     mpDisplay = gdk_display_get_default();
     countScreenMonitors();
+#if GTK_CHECK_VERSION(3,0,0)
+    // rhbz#1285356, native look will be gtk2, which crashes
+    // when gtk3 is already loaded. Until there is a solution
+    // java-side force look and feel to something that doesn't
+    // crash when we are using gtk3
+    setenv("STOC_FORCE_SYSTEM_LAF", "true", 1);
+#endif
 }
 
 GtkSalSystem::~GtkSalSystem()


More information about the Libreoffice-commits mailing list