File mozilla-bmo2008777.patch of Package MozillaFirefox
diff --git a/widget/gtk/nsWaylandDisplay.cpp b/widget/gtk/nsWaylandDisplay.cpp
--- a/widget/gtk/nsWaylandDisplay.cpp
+++ b/widget/gtk/nsWaylandDisplay.cpp
@@ -801,24 +801,25 @@
registry, id, &zwp_pointer_gestures_v1_interface,
ZWP_POINTER_GESTURES_V1_GET_HOLD_GESTURE_SINCE_VERSION);
display->SetPointerGestures(gestures);
} else if (iface.EqualsLiteral("wp_color_manager_v1")) {
auto* colorManager = WaylandRegistryBind<wp_color_manager_v1>(
- registry, id, &wp_color_manager_v1_interface, version);
+ registry, id, &wp_color_manager_v1_interface, 1);
display->SetColorManager(colorManager);
} else if (iface.EqualsLiteral("wp_color_representation_manager_v1")) {
auto* colorRepresentationManager =
WaylandRegistryBind<wp_color_representation_manager_v1>(
registry, id, &wp_color_representation_manager_v1_interface, 1);
display->SetColorRepresentationManager(colorRepresentationManager);
} else if (iface.EqualsLiteral("xx_pip_shell_v1")) {
auto* pipShell = WaylandRegistryBind<xx_pip_shell_v1>(
- registry, id, &xx_pip_shell_v1_interface, version);
+ registry, id, &xx_pip_shell_v1_interface, 1);
display->SetPipShell(pipShell);
} else if (iface.EqualsLiteral("xdg_wm_base")) {
+ uint32_t vers = MIN(version, (uint32_t)xdg_wm_base_interface.version);
auto* xdgWm = WaylandRegistryBind<xdg_wm_base>(
- registry, id, &xdg_wm_base_interface, version);
+ registry, id, &xdg_wm_base_interface, vers);
display->SetXdgWm(xdgWm);
} else if (iface.EqualsLiteral("wl_output") && version > 1) {
auto* output =
WaylandRegistryBind<wl_output>(registry, id, &wl_output_interface, 2);
display->AddWlOutput(output, id);