summaryrefslogtreecommitdiff
path: root/mozilla-1548475.patch
blob: b325683570b6f875736fe3e6b148b79b781db6b9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
diff --git a/dom/plugins/base/nsPluginHost.cpp b/dom/plugins/base/nsPluginHost.cpp
--- a/dom/plugins/base/nsPluginHost.cpp
+++ b/dom/plugins/base/nsPluginHost.cpp
@@ -105,6 +105,10 @@
 #  include "windows.h"
 #  include "winbase.h"
 #endif
+#if (MOZ_WIDGET_GTK)
+#  include <gdk/gdk.h>
+#  include <gdk/gdkx.h>
+#endif
 
 #include "npapi.h"
 
@@ -358,9 +362,15 @@
   mOverrideInternalTypes =
       Preferences::GetBool("plugin.override_internal_types", false);
 
-  mPluginsDisabled = Preferences::GetBool("plugin.disable", false);
-
-  Preferences::AddStrongObserver(this, "plugin.disable");
+  bool waylandBackend = false;
+#if MOZ_WIDGET_GTK
+  waylandBackend = !GDK_IS_X11_DISPLAY(gdk_display_get_default());
+#endif
+  mPluginsDisabled =
+      Preferences::GetBool("plugin.disable", false) || waylandBackend;
+  if (!waylandBackend) {
+    Preferences::AddStrongObserver(this, "plugin.disable");
+  }
 
   nsCOMPtr<nsIObserverService> obsService =
       mozilla::services::GetObserverService();

bgstack15