Introduction
Introduction Statistics Contact Development Disclaimer Help
applied Hiltjo's resize/move limitation - dwm - dynamic window manager
git clone git://git.suckless.org/dwm
Log
Files
Refs
README
LICENSE
---
commit 3d1090ba896319368c4771b88d325fcee368a608
parent 18248ebf4b9465b837e717dcd14a5202a98248e0
Author: Anselm R Garbe <[email protected]>
Date: Mon, 11 Aug 2014 07:24:29 +0200
applied Hiltjo's resize/move limitation
"Limit the amount of updates when resizing or moving a window in floating
mode to 60 times per second. This makes resizing and moving alot smoother
and by limiting it it also uses alot less resources on my machine.
Diffstat:
M LICENSE | 1 +
M dwm.c | 13 +++++++++++--
2 files changed, 12 insertions(+), 2 deletions(-)
---
diff --git a/LICENSE b/LICENSE
@@ -1,6 +1,7 @@
MIT/X Consortium License
© 2006-2014 Anselm R Garbe <[email protected]>
+© 2010-2014 Hiltjo Posthuma <[email protected]>
© 2007-2011 Peter Hartlich <sgkkr at hartlich dot com>
© 2010-2011 Connor Lane Smith <[email protected]>
© 2006-2009 Jukka Salmi <jukka at salmi dot ch>
diff --git a/dwm.c b/dwm.c
@@ -1123,6 +1123,7 @@ movemouse(const Arg *arg) {
Client *c;
Monitor *m;
XEvent ev;
+ Time lasttime = 0;
if(!(c = selmon->sel))
return;
@@ -1145,6 +1146,10 @@ movemouse(const Arg *arg) {
handler[ev.type](&ev);
break;
case MotionNotify:
+ if ((ev.xmotion.time - lasttime) <= (1000 / 60))
+ continue;
+ lasttime = ev.xmotion.time;
+
nx = ocx + (ev.xmotion.x - x);
ny = ocy + (ev.xmotion.y - y);
if(nx >= selmon->wx && nx <= selmon->wx + selmon->ww
@@ -1264,11 +1269,11 @@ resizeclient(Client *c, int x, int y, int w, int h) {
void
resizemouse(const Arg *arg) {
- int ocx, ocy;
- int nw, nh;
+ int ocx, ocy, nw, nh;
Client *c;
Monitor *m;
XEvent ev;
+ Time lasttime = 0;
if(!(c = selmon->sel))
return;
@@ -1290,6 +1295,10 @@ resizemouse(const Arg *arg) {
handler[ev.type](&ev);
break;
case MotionNotify:
+ if ((ev.xmotion.time - lasttime) <= (1000 / 60))
+ continue;
+ lasttime = ev.xmotion.time;
+
nw = MAX(ev.xmotion.x - ocx - 2 * c->bw + 1, 1);
nh = MAX(ev.xmotion.y - ocy - 2 * c->bw + 1, 1);
if(c->mon->wx + nw >= selmon->wx && c->mon->wx + nw <=…
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.