Package: xfwm4
Version: 4.10.0-1
Severity: normal
Tags: patch

--- Please enter the report below this line. ---
As is now, this setting does more than it says. While it does prevent
ALT+mouse resizing, it does not prevent ALT+mouse moving however, and
that does not remove the window maximized flag giving an odd borderless
maximized-but-not-quite window somewhere that cannot be resized.
So attached patch removes setting move resize policy restrictions for
maximized borderless windows.. hopefully^^
Can not test right now because of build-deps locally conflicting.

--- System information. ---
Architecture: i386
Kernel:       Linux 3.4-trunk-686-pae

Debian Release: wheezy/sid
  500 unstable-snapshots live.debian.net
  500 unstable        packages.kirya.net
  500 unstable        ftp.informatik.rwth-aachen.de
  500 testing         ftp.informatik.rwth-aachen.de
  500 testing         dl.google.com
  500 stable          ftp.informatik.rwth-aachen.de
  500 stable          dl.google.com
  500 sid             apsy.gse.uni-magdeburg.de
  500 precise         ppa.launchpad.net
  500 oneiric         ppa.launchpad.net
  500 karmic          ppa.launchpad.net
  500 data            apsy.gse.uni-magdeburg.de
  499 unstable        www.debian-multimedia.org
  499 stable          www.debian-multimedia.org
  499 stable          updates.repository.backtrack-linux.org
  499 stable          all.repository.backtrack-linux.org
  499 stable          32.repository.backtrack-linux.org
  499 experimental    www.debian-multimedia.org
  499 experimental    ftp.informatik.rwth-aachen.de
  100 oneiric-getdeb  archive.getdeb.net
  100 natty-getdeb    archive.getdeb.net
  100 mepis           restricted.mepis-deb.org
  100 mepis           main.mepis-deb.org

--- Package information. ---
Depends                          (Version) | Installed
==========================================-+-==============
libc6                             (>= 2.4) | 2.13-33
libdbus-glib-1-2                 (>= 0.78) | 0.98-1
libgdk-pixbuf2.0-0             (>= 2.22.0) | 2.26.1-1
libglib2.0-0                   (>= 2.24.0) | 2.32.3-1
libgtk2.0-0                    (>= 2.24.0) | 2.24.10-1
libpango1.0-0                  (>= 1.14.0) | 1.30.0-1
libstartup-notification0          (>= 0.7) | 0.12-1
libwnck22                    (>= 2.30.0-3) | 1:2.30.0-0ubuntu1
libx11-6                                   | 2:1.5.0-1
libxcomposite1                (>= 1:0.3-1) | 1:0.4.3-2
libxdamage1                     (>= 1:1.1) | 1:1.1.3-2
libxext6                                   | 2:1.3.1-2
libxfce4ui-1-0                  (>= 4.9.0) | 4.10.0-1
libxfce4util6                   (>= 4.9.0) | 4.10.0-1
libxfconf-0-2                   (>= 4.6.0) | 4.10.0-1
libxfixes3                                 | 1:5.0-4
libxrandr2                                 | 2:1.3.2-2
libxrender1                                | 1:0.9.7-1


Recommends           (Version) | Installed
==============================-+-===========
xfwm4-themes                   | 4.10.0-1
librsvg2-common                | 2.36.1-1


Suggests      (Version) | Installed
=======================-+-===========
xfce4                   | 4.10.0
>From 96128e561e8757ef835604ce95767d5f20403674 Mon Sep 17 00:00:00 2001
From: Marcel Partap <mpar...@gmx.net>
Date: Fri, 13 Jul 2012 07:33:04 +0200
Subject: [PATCH] Do not prevent ALT+Mouse resizing for borderless maximized
 windows.

---
 src/client.c     |    6 ++----
 src/moveresize.c |   10 +---------
 2 files changed, 3 insertions(+), 13 deletions(-)

diff --git a/src/client.c b/src/client.c
index 4e86808..33241bc 100644
--- a/src/client.c
+++ b/src/client.c
@@ -811,11 +811,9 @@ clientMoveResizeWindow (Client *c, XWindowChanges * wc, unsigned long mask)
         /* Ignore stacking request for DESKTOP windows */
         mask &= ~(CWSibling | CWStackMode);
     }
-    if (FLAG_TEST (c->flags, CLIENT_FLAG_FULLSCREEN)
-        || (FLAG_TEST_ALL (c->flags, CLIENT_FLAG_MAXIMIZED)
-            && (screen_info->params->borderless_maximize)))
+    if (FLAG_TEST (c->flags, CLIENT_FLAG_FULLSCREEN))
     {
-        /* Not allowed in fullscreen or maximzed mode */
+        /* Not allowed in fullscreen mode */
         mask &= ~(CWX | CWY | CWWidth | CWHeight);
     }
     /*clean up buggy requests that set all flags */
diff --git a/src/moveresize.c b/src/moveresize.c
index 9893c30..4fa3548 100644
--- a/src/moveresize.c
+++ b/src/moveresize.c
@@ -89,9 +89,7 @@ clientSetSize (Client * c, int *size, int size_min, int size_max, int size_inc,
     TRACE ("entering clientSetSize");
 
     /* Bypass resize increment and max sizes for fullscreen */
-    if (!FLAG_TEST (c->flags, CLIENT_FLAG_FULLSCREEN)
-        && !(FLAG_TEST_ALL (c->flags, CLIENT_FLAG_MAXIMIZED)
-             && (c->screen_info->params->borderless_maximize)))
+    if (!FLAG_TEST (c->flags, CLIENT_FLAG_FULLSCREEN))
     {
         if (!source_is_application && (c->size->flags & PResizeInc) && (size_inc))
         {
@@ -1641,12 +1639,6 @@ clientResize (Client * c, int handle, XEvent * ev)
     screen_info = c->screen_info;
     display_info = screen_info->display_info;
 
-    if (FLAG_TEST_ALL (c->flags, CLIENT_FLAG_MAXIMIZED)
-        && (screen_info->params->borderless_maximize))
-    {
-        return;
-    }
-
     TRACE ("resizing client \"%s\" (0x%lx)", c->name, c->window);
 
     passdata.c = c;
-- 
1.7.10.4

Reply via email to