[Wayland-bugs] [Bug 770906] Wayland: Unmapping a toplevel from a menu/popup can lead to a protocol error

gtk+ (GNOME Bugzilla) bugzilla at gnome.org
Mon Sep 12 04:18:08 UTC 2016


https://bugzilla.gnome.org/show_bug.cgi?id=770906

Jonas Ådahl <jadahl at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #334878|none                        |needs-work
             status|                            |

--- Comment #5 from Jonas Ådahl <jadahl at gmail.com> ---
Review of attachment 334878:

::: gdk/wayland/gdkwindow-wayland.c
@@ +2350,3 @@
+          gdk_window_hide (popup);
+        }
+    }

It looks like this would only work if there is one popup and the parent is
unmapped. If there are two popups chained, g_list_last(current_popups) will be
the top most one. The parent of the top most one will be the first (not
topmost) popup, thus we'd still hide the toplevel.

I think what you need to do here is loop through current_popups, and compare
each popup_parent until it matches 'window' and hide that (which will do the
same thing recursively until the top most is hidden).

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/wayland-bugs/attachments/20160912/2a46b180/attachment.html>


More information about the wayland-bugs mailing list