Fix 1376471

This commit is contained in:
Matthias Clasen 2016-11-08 13:55:16 -05:00
parent 08a004c1f1
commit 547d478d1d
2 changed files with 50 additions and 0 deletions

View File

@ -15,6 +15,7 @@ Source0: http://download.gnome.org/sources/%{name}/3.23/%{name}-%{version}
# https://bugzilla.gnome.org/show_bug.cgi?id=772422 # https://bugzilla.gnome.org/show_bug.cgi?id=772422
Patch0: 0001-Use-eglGetPlatformDisplay.patch Patch0: 0001-Use-eglGetPlatformDisplay.patch
Patch1: startup-notification.patch
BuildRequires: chrpath BuildRequires: chrpath
BuildRequires: pango-devel BuildRequires: pango-devel
@ -107,6 +108,7 @@ the functionality of the installed %{name} package.
%prep %prep
%setup -q %setup -q
%patch0 -p1 %patch0 -p1
%patch1 -p1
%build %build
autoreconf -f -i autoreconf -f -i
@ -181,6 +183,9 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
%{_datadir}/mutter/tests %{_datadir}/mutter/tests
%changelog %changelog
* Tue Nov 8 2016 Matthias Clasen <mclasen@redhat.com> - 3.23.1-2
- Fix 1376471
* Sun Oct 30 2016 Florian Müllner <fmuellner@redhat.com> - 3.23.1-1 * Sun Oct 30 2016 Florian Müllner <fmuellner@redhat.com> - 3.23.1-1
- Update to 3.23.1 - Update to 3.23.1

View File

@ -0,0 +1,45 @@
From 4ed430b4ef3013c96fa56cdc57b925b42d20ead9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 20 Oct 2016 18:00:04 +0200
Subject: [PATCH] gtk-shell: Work around non-working startup notifications
GNOME Shell relies on the MetaScreen::startup-sequence-changed signal,
which is tied to (lib)startup-notification and therefore X11. As a result,
when we remove the startup sequence of a wayland client, GNOME Shell will
not be notified about this until startup-notification's timeout is hit.
As a temporary stop-gap, go through XWayland even for wayland clients,
so that the signal is emitted when expected.
https://bugzilla.gnome.org/show_bug.cgi?id=768531
---
src/wayland/meta-wayland-gtk-shell.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/src/wayland/meta-wayland-gtk-shell.c b/src/wayland/meta-wayland-gtk-shell.c
index d6e249f..9d1a19e 100644
--- a/src/wayland/meta-wayland-gtk-shell.c
+++ b/src/wayland/meta-wayland-gtk-shell.c
@@ -219,11 +219,21 @@ gtk_shell_set_startup_id (struct wl_client *client,
struct wl_resource *resource,
const char *startup_id)
{
+#if 0
MetaDisplay *display;
display = meta_get_display ();
meta_startup_notification_remove_sequence (display->startup_notification,
startup_id);
+#else
+ /* HACK: MetaScreen::startup-sequence-changed is currently tied to
+ (lib)startup-notification, which means it only works on X11;
+ so for now, always go through XWayland, even for wayland clients */
+ gdk_x11_display_broadcast_startup_message (gdk_display_get_default (),
+ "remove",
+ "ID", startup_id,
+ NULL);
+#endif
}
static void
--
2.9.3