From 925c5eb24560dcfba78ea4a145060d8e0d0d0007 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Wed, 11 Sep 2019 16:47:10 +0200 Subject: [PATCH] Backport a patch to fix xsettings/ibus-x11 initialization https://bugzilla.redhat.com/show_bug.cgi?id=1750512 --- 792.patch | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ mutter.spec | 8 +++++++- 2 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 792.patch diff --git a/792.patch b/792.patch new file mode 100644 index 0000000..286fec4 --- /dev/null +++ b/792.patch @@ -0,0 +1,49 @@ +From 09fbeec5bb7a848add737c5313e8e035fc24bad1 Mon Sep 17 00:00:00 2001 +From: Carlos Garnacho +Date: Wed, 11 Sep 2019 15:27:48 +0200 +Subject: [PATCH] display: Ensure ::x11-display-opened is emitted at a time + there are handlers + +During display initialization, the MetaX11Display would be opened at a time +when we didn't initialize yet the compositor/plugin. The plugin is certainly +interested in ::x11-display-opened happening, so make sure the signal +happens late enough that the upper layers are able to connect to the signal +in advance. + +Fixes xsettings/ibus-x11 initialization on the still default "initialize +Xwayland on startup" wayland compositor behavior. + +Closes: https://gitlab.gnome.org/GNOME/mutter/issues/771 +--- + src/core/display.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/core/display.c b/src/core/display.c +index e803f5557..01a5974f4 100644 +--- a/src/core/display.c ++++ b/src/core/display.c +@@ -657,12 +657,12 @@ meta_display_init_x11 (MetaDisplay *display, + return FALSE; + + display->x11_display = x11_display; +- g_signal_emit (display, display_signals[X11_DISPLAY_OPENED], 0); + + meta_x11_display_create_guard_window (x11_display); + + if (!display->display_opening) + { ++ g_signal_emit (display, display_signals[X11_DISPLAY_OPENED], 0); + meta_display_manage_all_xwindows (display); + meta_compositor_redirect_x11_windows (display->compositor); + } +@@ -803,6 +803,7 @@ meta_display_open (void) + + if (display->x11_display) + { ++ g_signal_emit (display, display_signals[X11_DISPLAY_OPENED], 0); + meta_x11_display_restore_active_workspace (display->x11_display); + meta_x11_display_create_guard_window (display->x11_display); + } +-- +2.22.0 + diff --git a/mutter.spec b/mutter.spec index 6ba947c..3b3541f 100644 --- a/mutter.spec +++ b/mutter.spec @@ -8,7 +8,7 @@ Name: mutter Version: 3.34.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Window and compositing manager based on Clutter License: GPLv2+ @@ -18,6 +18,9 @@ Source0: http://download.gnome.org/sources/%{name}/3.34/%{name}-%{version} # Work-around for OpenJDK's compliance test Patch0: 0001-window-actor-Special-case-shaped-Java-windows.patch +# Fix xsettings/ibus-x11 initialization +# https://gitlab.gnome.org/GNOME/mutter/merge_requests/792 +Patch1: 792.patch BuildRequires: chrpath BuildRequires: pango-devel @@ -162,6 +165,9 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop %{_datadir}/mutter-%{mutter_api_version}/tests %changelog +* Wed Sep 11 2019 Kalev Lember - 3.34.0-2 +- Backport a patch to fix xsettings/ibus-x11 initialization (#1750512) + * Mon Sep 09 2019 Florian Müllner - 3.34.0-1 - Update to 3.34.0