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.
This commit is contained in:
Jonas Ådahl 2018-10-17 13:45:28 +02:00 committed by Georges Basile Stavracas Neto
parent 19e3c21667
commit 666bef7af9

View File

@ -305,7 +305,17 @@ get_standalone_layer (MetaWindow *window)
case META_WINDOW_NOTIFICATION: case META_WINDOW_NOTIFICATION:
case META_WINDOW_COMBO: case META_WINDOW_COMBO:
case META_WINDOW_OVERRIDE_OTHER: 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; break;
default: default:
if (window->wm_state_below) if (window->wm_state_below)