[mutter] stack: Don't place Wayland popups in o-r layer
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] stack: Don't place Wayland popups in o-r layer
- Date: Tue, 4 Dec 2018 14:38:52 +0000 (UTC)
commit 666bef7af94eb7b49859b5abfbc8856319495b12
Author: Jonas Ã…dahl <jadahl gmail com>
Date: Wed Oct 17 13:45:28 2018 +0200
stack: Don't place Wayland popups in o-r layer
Placing persistant Wayland popups (e.g. not menus etc) in the o-r layer
breaks stacking order with other window trees (e.g. other client
windows), as the menu would get stuck in the o-r layer, i.e. on top,
even if the parent of the popup got lowered.
Fix this by placing the popups in the normal layer, relying on
transient-ness to keep stacking correct.
src/core/stack.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
---
diff --git a/src/core/stack.c b/src/core/stack.c
index 28fd94c54..619d27a49 100644
--- a/src/core/stack.c
+++ b/src/core/stack.c
@@ -305,7 +305,17 @@ get_standalone_layer (MetaWindow *window)
case META_WINDOW_NOTIFICATION:
case META_WINDOW_COMBO:
case META_WINDOW_OVERRIDE_OTHER:
- layer = META_LAYER_OVERRIDE_REDIRECT;
+ switch (window->client_type)
+ {
+ case META_WINDOW_CLIENT_TYPE_X11:
+ layer = META_LAYER_OVERRIDE_REDIRECT;
+ break;
+ case META_WINDOW_CLIENT_TYPE_WAYLAND:
+ layer = META_LAYER_NORMAL;
+ break;
+ default:
+ g_assert_not_reached ();
+ }
break;
default:
if (window->wm_state_below)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]