summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiovanni Campagna <gcampagn@redhat.com>2013-09-26 10:33:06 +0200
committerFlorian Müllner <fmuellner@gnome.org>2014-02-21 12:25:11 +0100
commitc4057558954c737b9b3cc2db35e67361332a558d (patch)
tree8131b55e7c7fb62dadb60a58c1b793236b599ad8
parent08b18a32e593d828231deeee376bf6c504e1cffc (diff)
downloadmetacity-c4057558954c737b9b3cc2db35e67361332a558d.tar.gz
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
-rw-r--r--src/core/constraints.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/core/constraints.c b/src/core/constraints.c
index f3a1613a..7c2960cc 100644
--- a/src/core/constraints.c
+++ b/src/core/constraints.c
@@ -421,9 +421,13 @@ setup_constraint_info (ConstraintInfo *info,
xinerama_info->number);
/* Workaround braindead legacy apps that don't know how to
- * fullscreen themselves properly.
+ * fullscreen themselves properly - don't get fooled by
+ * windows which are client decorated; that's not the same
+ * as fullscreen, even if there are no struts making the
+ * workarea smaller than the monitor.
*/
if (meta_prefs_get_force_fullscreen() &&
+ window->decorated &&
meta_rectangle_equal (new, &xinerama_info->rect) &&
window->has_fullscreen_func &&
!window->fullscreen)