constraints: don't apply fullscreen workarounds for CSD windows

If you maximize a CSD window on a monitor without struts, it ends
up taking the whole monitor size, but it doesn't mean that the
application wants to fullscreen.

https://bugzilla.gnome.org/show_bug.cgi?id=708718
This commit is contained in:
Giovanni Campagna 2013-09-26 10:33:06 +02:00
parent dd64f62b2f
commit 4eeeb1557a

View File

@ -447,12 +447,14 @@ setup_constraint_info (ConstraintInfo *info,
/* Workaround braindead legacy apps that don't know how to /* Workaround braindead legacy apps that don't know how to
* fullscreen themselves properly - don't get fooled by * fullscreen themselves properly - don't get fooled by
* windows which hide their titlebar when maximized; that's * windows which hide their titlebar when maximized or which are
* not the same as fullscreen, even if there are no struts * client decorated; that's not the same as fullscreen, even
* making the workarea smaller than the monitor. * if there are no struts making the workarea smaller than
* the monitor.
*/ */
if (meta_prefs_get_force_fullscreen() && if (meta_prefs_get_force_fullscreen() &&
!window->hide_titlebar_when_maximized && !window->hide_titlebar_when_maximized &&
window->decorated &&
meta_rectangle_equal (new, &monitor_info->rect) && meta_rectangle_equal (new, &monitor_info->rect) &&
window->has_fullscreen_func && window->has_fullscreen_func &&
!window->fullscreen) !window->fullscreen)