aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorokan2016-09-13 13:42:28 +0000
committerokan2016-09-13 13:42:28 +0000
commit1309ef15169cac4c27577bc4df2103c1c233d137 (patch)
treeb8d770d4ef335e8711fcd753446269b090312d0e
parent6c0c2a8505a1bf5670b034a57335d5885990666f (diff)
downloadcwm-1309ef15169cac4c27577bc4df2103c1c233d137.tar.gz
Limit mouse resize to hints within the client; matches kbd resize
behaviour.
Diffstat (limited to '')
-rw-r--r--mousefunc.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/mousefunc.c b/mousefunc.c
index c93fd66..f72416f 100644
--- a/mousefunc.c
+++ b/mousefunc.c
@@ -16,7 +16,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $OpenBSD: mousefunc.c,v 1.103 2015/11/17 14:31:28 okan Exp $
+ * $OpenBSD: mousefunc.c,v 1.104 2016/09/13 13:42:28 okan Exp $
*/
#include <sys/types.h>
@@ -57,7 +57,6 @@ mousefunc_client_resize(struct client_ctx *cc, union arg *arg)
XEvent ev;
Time ltime = 0;
struct screen_ctx *sc = cc->sc;
- int x = cc->geom.x, y = cc->geom.y;
if (cc->flags & CLIENT_FREEZE)
return;
@@ -81,12 +80,8 @@ mousefunc_client_resize(struct client_ctx *cc, union arg *arg)
continue;
ltime = ev.xmotion.time;
- cc->geom.w = abs(x - ev.xmotion.x_root) - cc->bwidth;
- cc->geom.h = abs(y - ev.xmotion.y_root) - cc->bwidth;
- cc->geom.x = (x <= ev.xmotion.x_root) ?
- x : x - cc->geom.w;
- cc->geom.y = (y <= ev.xmotion.y_root) ?
- y : y - cc->geom.h;
+ cc->geom.w = ev.xmotion.x;
+ cc->geom.h = ev.xmotion.y;
client_applysizehints(cc);
client_resize(cc, 1);
mousefunc_sweep_draw(cc);