Blob Blame History Raw
diff -up firefox-65.0/toolkit/xre/nsAppRunner.cpp.1522780 firefox-65.0/toolkit/xre/nsAppRunner.cpp
--- firefox-65.0/toolkit/xre/nsAppRunner.cpp.1522780	2019-02-04 14:27:16.704591496 +0100
+++ firefox-65.0/toolkit/xre/nsAppRunner.cpp	2019-02-04 14:30:01.869913509 +0100
@@ -3839,12 +3839,14 @@ int XREMain::XRE_mainStartup(bool* aExit
 
     bool disableWayland = true;
 #if defined(MOZ_WAYLAND)
-    // Make X11 backend the default one.
-    // Enable Wayland backend only when GDK_BACKEND is set and
-    // Gtk+ >= 3.22 where we can expect recent enough
-    // compositor & libwayland interface.
-    disableWayland = (PR_GetEnv("GDK_BACKEND") == nullptr) ||
-                     (gtk_check_version(3, 22, 0) != nullptr);
+    // Enable Wayland on Gtk+ >= 3.22 where we can expect recent enough
+    disableWayland = (gtk_check_version(3, 22, 0) != nullptr);
+    if (!disableWayland) {
+      // Make X11 backend the default one unless MOZ_ENABLE_WAYLAND or
+      // GDK_BACKEND are specified.
+      disableWayland = (PR_GetEnv("GDK_BACKEND") == nullptr) &&
+                       (PR_GetEnv("MOZ_ENABLE_WAYLAND") == nullptr);
+    }
 #endif
     // On Wayland disabled builds read X11 DISPLAY env exclusively
     // and don't care about different displays.