stack: Allow promoting transient windows to their parent's layer
When a window that should be stacked above another one is placed in a lower
layer than the other window, we currently allow promoting it to the higher
layer when it has a "transient type". We should do the same when the window
is an actual transient of the other window.
This is particularly relevant for wayland windows, where types play a
much smaller role: Transient windows like non-modal dialogs (and since
commit 666bef7a
, popup windows as well) currently end up underneath their
always-on-top parent.
https://gitlab.gnome.org/GNOME/mutter/issues/587
This commit is contained in:
parent
0247d35e5a
commit
1c89fce30e
1 changed files with 5 additions and 2 deletions
|
@ -859,8 +859,11 @@ static void
|
|||
ensure_above (MetaWindow *above,
|
||||
MetaWindow *below)
|
||||
{
|
||||
if (WINDOW_HAS_TRANSIENT_TYPE(above) &&
|
||||
above->layer < below->layer)
|
||||
gboolean is_transient;
|
||||
|
||||
is_transient = WINDOW_HAS_TRANSIENT_TYPE (above) ||
|
||||
above->transient_for == below;
|
||||
if (is_transient && above->layer < below->layer)
|
||||
{
|
||||
meta_topic (META_DEBUG_STACK,
|
||||
"Promoting window %s from layer %u to %u due to contraint\n",
|
||||
|
|
Loading…
Reference in a new issue