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 730681 - Apps fullscreen randomly at start
Apps fullscreen randomly at start
Status: RESOLVED FIXED
Product: mutter
Classification: Core
Component: general
3.13.x
Other Linux
: Normal normal
: ---
Assigned To: mutter-maint
mutter-maint
Depends on:
Blocks:
 
 
Reported: 2014-05-24 09:48 UTC by Carlos Soriano
Modified: 2014-06-09 20:36 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
constraints: Translate frame to client rect for legacy fullscreen check (1.46 KB, patch)
2014-06-06 13:09 UTC, Florian Müllner
committed Details | Review
window-x11: Handle legacy fullscreen requests (3.91 KB, patch)
2014-06-09 19:48 UTC, Florian Müllner
committed Details | Review

Description Carlos Soriano 2014-05-24 09:48:06 UTC
Sometimes when an app is started, it starts fullscreen or becomes fullscreen at the next second.
I never used fullscreen before, so that's kind of strange (and anoying)

Using multimonitor and rawhide.
Comment 1 drago01 2014-05-28 10:18:03 UTC
Which app(s) ? Fullscreen or maximized?
Comment 2 Carlos Soriano 2014-05-28 10:22:40 UTC
all apps that can be fullscreen.
fullscreen.
Comment 3 Carlos Soriano 2014-05-31 09:42:18 UTC
Just saw: mutter warning: request size of legacy app 0xe(somenumber) threated as a fullscreen() request.

I don't know if it is related or not.
Comment 4 Florian Müllner 2014-05-31 10:07:39 UTC
Yes. Basically some old apps don't use EWMH to fullscreen themselves, but resize windows to the size of the monitor - we complain, but do treat those as fullscreen request. Now with client-side decorations, windows on monitors without struts *are* monitor sized, so we did have problems with erroneously treating them as legacy apps in the past - the test has been updated to handle CSD windows correctly, but maybe we have regressed?
Comment 5 Florian Müllner 2014-06-06 13:09:00 UTC
Created attachment 278024 [details] [review]
constraints: Translate frame to client rect for legacy fullscreen check

Ha, figured it out - Jasper updated the legacy check to apply to all server-decorated maximized windows :-)

Stupid apps fullscreen themselves by resizing the client window to
monitor size. A monitor-sized frame rect on the other hand is perfectly
normal on monitors without struts - stop force-fullscreening those
and catch the real baddies instead.
Comment 6 Jasper St. Pierre (not reading bugmail) 2014-06-09 19:01:18 UTC
Review of attachment 278024 [details] [review]:

Hmph. One thing I've wanted to do for a long time now was fix the variety of fullscreen and placement checks. They really shouldn't be in the constraints code -- they should just be something that happens in move_resize_internal. Or even better, in move_resize_request in window-x11.c, as it should never apply to Wayland windows in the first place.

If you don't feel comfortable doing that, I will.
Comment 7 Florian Müllner 2014-06-09 19:30:16 UTC
Comment on attachment 278024 [details] [review]
constraints: Translate frame to client rect for legacy fullscreen check

Attachment 278024 [details] pushed as 3f6c6f1 - constraints: Translate frame to client rect for legacy fullscreen check

(In reply to comment #6)
> If you don't feel comfortable doing that, I will.

Sure, I'll take a look. Leaving the bug open for that, but pushing in the meantime - really, leaving stuff broken because after 10+ years the code location is not pretty enough while the big unreviewed patch that caused this and other regressions is apparently perfectly fine is a bit ridiculous.
Comment 8 Florian Müllner 2014-06-09 19:48:44 UTC
Created attachment 278162 [details] [review]
window-x11: Handle legacy fullscreen requests

Doing this on the actual resize requests makes more sense than
handling it as a window-manager imposed constraints, so move
the code accordingly.

(Disclaimer: not actually tested with any legacy apps)
Comment 9 Florian Müllner 2014-06-09 20:14:10 UTC
So did some testing, and the patch seems to work (interestingly enough, I was not able to trigger the fs behavior *without* the patch when calling move_resize directly from the configure-event, but that feels more like an accidental bug fix than a regression ...)
Comment 10 Jasper St. Pierre (not reading bugmail) 2014-06-09 20:17:53 UTC
Review of attachment 278162 [details] [review]:

Looks good.
Comment 11 Florian Müllner 2014-06-09 20:36:27 UTC
Attachment 278162 [details] pushed as fba022c - window-x11: Handle legacy fullscreen requests