Accepting request 527289 from GNOME:Next
1 OBS-URL: https://build.opensuse.org/request/show/527289 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gnome-shell?expand=0&rev=327
This commit is contained in:
parent
2e3c21d03c
commit
9f074be7ee
47
gnome-shell-only-listen-window-created-events-once.patch
Normal file
47
gnome-shell-only-listen-window-created-events-once.patch
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
From 90c55e1977fde252b79bcfd9d0ef41144fb21fe2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Ray Strode <rstrode@redhat.com>
|
||||||
|
Date: Thu, 14 Sep 2017 14:46:13 -0400
|
||||||
|
Subject: gtk-embed: ensure we only listen for window-created events once
|
||||||
|
|
||||||
|
If a tray icon gets a mapped and unmapped and the mapped again
|
||||||
|
in quick succession, we can end up with multiple handlers
|
||||||
|
listening for window creation events.
|
||||||
|
|
||||||
|
This commit tries to guard against that by only listening for
|
||||||
|
window-created events when we don't know the actor associated
|
||||||
|
with the icon.
|
||||||
|
|
||||||
|
https://bugzilla.gnome.org/show_bug.cgi?id=787361
|
||||||
|
---
|
||||||
|
src/shell-gtk-embed.c | 15 ++++++++-------
|
||||||
|
1 file changed, 8 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/shell-gtk-embed.c b/src/shell-gtk-embed.c
|
||||||
|
index 176b413..5406104 100644
|
||||||
|
--- a/src/shell-gtk-embed.c
|
||||||
|
+++ b/src/shell-gtk-embed.c
|
||||||
|
@@ -124,13 +124,14 @@ shell_gtk_embed_on_window_mapped (GtkWidget *object,
|
||||||
|
ShellGtkEmbedPrivate *priv = shell_gtk_embed_get_instance_private (embed);
|
||||||
|
MetaDisplay *display = shell_global_get_display (shell_global_get ());
|
||||||
|
|
||||||
|
- /* Listen for new windows so we can detect when Mutter has
|
||||||
|
- created a MutterWindow for this window */
|
||||||
|
- priv->window_created_handler =
|
||||||
|
- g_signal_connect (display,
|
||||||
|
- "window-created",
|
||||||
|
- G_CALLBACK (shell_gtk_embed_window_created_cb),
|
||||||
|
- embed);
|
||||||
|
+ if (priv->window_created_handler == 0 && priv->window_actor == NULL)
|
||||||
|
+ /* Listen for new windows so we can detect when Mutter has
|
||||||
|
+ created a MutterWindow for this window */
|
||||||
|
+ priv->window_created_handler =
|
||||||
|
+ g_signal_connect (display,
|
||||||
|
+ "window-created",
|
||||||
|
+ G_CALLBACK (shell_gtk_embed_window_created_cb),
|
||||||
|
+ embed);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
--
|
||||||
|
cgit v0.12
|
||||||
|
|
@ -1,3 +1,10 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 19 10:02:41 UTC 2017 - zaitor@opensuse.org
|
||||||
|
|
||||||
|
- Add gnome-shell-only-listen-window-created-events-once.patch:
|
||||||
|
gtk-embed: ensure we only listen for window-created events once
|
||||||
|
(bgo#787361).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Sep 18 07:31:56 UTC 2017 - xwang@suse.com
|
Mon Sep 18 07:31:56 UTC 2017 - xwang@suse.com
|
||||||
|
|
||||||
|
@ -59,6 +59,8 @@ Patch16: gnome-shell-app-workaround-pkexec.patch
|
|||||||
Patch17: gnome-shell-dateMenu-fixes.patch
|
Patch17: gnome-shell-dateMenu-fixes.patch
|
||||||
# PATCH-FIX-UPSTREAM gnome-shell-fix-crash-hint-actor-NULL.patch bgo#787580 zaitor@opensuse.org -- StEntry: fix crash when hint actor is NULL
|
# PATCH-FIX-UPSTREAM gnome-shell-fix-crash-hint-actor-NULL.patch bgo#787580 zaitor@opensuse.org -- StEntry: fix crash when hint actor is NULL
|
||||||
Patch18: gnome-shell-fix-crash-hint-actor-NULL.patch
|
Patch18: gnome-shell-fix-crash-hint-actor-NULL.patch
|
||||||
|
# PATCH-FIX-UPSTREAM gnome-shell-only-listen-window-created-events-once.patch bgo#787361 zaitor@opensuse.org -- gtk-embed: ensure we only listen for window-created events once
|
||||||
|
Patch19: gnome-shell-only-listen-window-created-events-once.patch
|
||||||
## NOTE: Keep SLE Classic patches at bottom.
|
## NOTE: Keep SLE Classic patches at bottom.
|
||||||
# PATCH-FEATURE-SLE gs-sle-classic-ext.patch bnc#862615 cxiong@suse.com -- add SLE Classic support
|
# PATCH-FEATURE-SLE gs-sle-classic-ext.patch bnc#862615 cxiong@suse.com -- add SLE Classic support
|
||||||
Patch1000: gs-sle-classic-ext.patch
|
Patch1000: gs-sle-classic-ext.patch
|
||||||
@ -201,6 +203,7 @@ into GNOME Shell calendar.
|
|||||||
%patch16 -p1
|
%patch16 -p1
|
||||||
%patch17 -p1
|
%patch17 -p1
|
||||||
%patch18 -p1
|
%patch18 -p1
|
||||||
|
%patch19 -p1
|
||||||
|
|
||||||
%if !0%{?is_opensuse}
|
%if !0%{?is_opensuse}
|
||||||
%patch1000 -p1
|
%patch1000 -p1
|
||||||
|
Loading…
x
Reference in New Issue
Block a user