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 660773 - Mutter clips windows with decorations removed
Mutter clips windows with decorations removed
Status: RESOLVED FIXED
Product: mutter
Classification: Core
Component: general
3.2.x
Other Linux
: Normal normal
: ---
Assigned To: mutter-maint
mutter-maint
Depends on:
Blocks:
 
 
Reported: 2011-10-03 10:52 UTC by Rich Wareham
Modified: 2011-10-04 11:50 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Screenshot of the problem. (9.87 KB, image/png)
2011-10-03 10:52 UTC, Rich Wareham
  Details
frame: destroy window->frame_bounds when destroying the frame (971 bytes, patch)
2011-10-03 13:02 UTC, Rui Matos
committed Details | Review

Description Rich Wareham 2011-10-03 10:52:31 UTC
Created attachment 198069 [details]
Screenshot of the problem.

When window decorations are removed by setting the _MOTIF_WM_HINTS property on windows, mutter does indeed remove the borders by incorrectly keeps clipping the window with the decoration mask.

Steps to reproduce:

1. Launch, e.g., gnome-calculator.
2. Remove decorations via:

    xprop -name 'Calculator' -f _MOTIF_WM_HINTS 32c -set _MOTIF_WM_HINTS "0x2, 0x0, 0x0, 0x0, 0x0"

Results:

See attached file. Left and top of window is clipped off.

Expected results:

A rectangular window.

Note:

I make use of this technique (via devilspie) to keep a Xephyr window on one desktop running an old GNOME session in a VM for development. At the moment I have a 'magic border' of ~10px around the top-left which is still active and goes through to the underlying Xephyr but is clipped by mutter. Very odd!
Comment 1 Rich Wareham 2011-10-03 10:54:28 UTC
* ... remove the borders borders _but_ incorrectly keeps ...

-ENOPROOFREAD :(
Comment 2 Rui Matos 2011-10-03 13:02:10 UTC
Created attachment 198080 [details] [review]
frame: destroy window->frame_bounds when destroying the frame

Since window->frame_bounds is used as a cache we need to invalidate it when
destroying the frame.
Comment 3 Colin Walters 2011-10-03 16:07:29 UTC
Review of attachment 198080 [details] [review]:

Looks good to me.
Comment 4 Rui Matos 2011-10-04 11:50:16 UTC
Attachment 198080 [details] pushed as 9f54f1d - frame: destroy window->frame_bounds when destroying the frame