After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 772937 - [mutter] removal of META_LAYER_FULLSCREEN causes WINDOW_TYPE_HINT_DOCK and fullscreen apps to overlay
[mutter] removal of META_LAYER_FULLSCREEN causes WINDOW_TYPE_HINT_DOCK and fu...
Status: RESOLVED FIXED
Product: mutter
Classification: Core
Component: general
3.22.x
Other Linux
: Normal normal
: ---
Assigned To: mutter-maint
mutter-maint
Depends on:
Blocks:
 
 
Reported: 2016-10-14 14:32 UTC by Carlos Silva
Modified: 2016-11-02 13:16 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
screenshot showing the problem (1.44 MB, image/png)
2016-10-14 14:32 UTC, Carlos Silva
  Details
stack: Stack docks below other windows on fullscreen monitors (2.06 KB, patch)
2016-10-24 15:44 UTC, Rui Matos
committed Details | Review

Description Carlos Silva 2016-10-14 14:32:31 UTC
Created attachment 337723 [details]
screenshot showing the problem

Mutter 3.22 removed META_LAYER_FULLSCREEN that caused all fullscreen apps to go above all other windows. Since that commit [1], WINDOW_TYPE_HINT_DOCK windows and fullscreen apps, share the same layer and can cause _DOCK windows appearing over fullscreen apps.

To reproduce the problem one just need to have a _DOCK window and then open a full screen app (I tested this with games).

On the screenshot attached, the bottom panel has the _HINT_DOCK flag set, but it's always on top even of a fullscreen app.

[1] https://git.gnome.org/browse/mutter/commit/?id=fcc7501eb8dab5c1749e5421e31311fd14fd73f0
Comment 1 Rui Matos 2016-10-24 15:44:42 UTC
Created attachment 338360 [details] [review]
stack: Stack docks below other windows on fullscreen monitors

Commit fcc7501eb8dab5c1749e5421e31311fd14fd73f0 had the side-effect of
stacking fullscreen windows below docks which went unnoticed since we
don't use docks in GNOME anymore.

Instead of re-introducing the fullscreen layer, which we don't need
otherwise, we can fix this issue by ensuring we stack docks below all
other windows when the monitor they're on is marked fullscreen. This
has the added benefit that the visibility rule for 3rd party docks
becomes the same as gnome-shell's chrome.
Comment 2 Florian Müllner 2016-10-27 12:33:04 UTC
Review of attachment 338360 [details] [review]:

OK
Comment 3 Udara Madubhashana 2016-10-31 12:55:51 UTC
Patch is successfully working with Budgie Desktop, and here I have build temporary package for this.

https://launchpad.net/~udara/+archive/ubuntu/mutter-patch
Comment 4 Rui Matos 2016-11-02 13:15:54 UTC
Attachment 338360 [details] pushed as bfb46ff - stack: Stack docks below other windows on fullscreen monitors