|
@@ -1123,6 +1123,7 @@ movemouse(const Arg *arg) {
|
|
|
Client *c;
|
|
Client *c;
|
|
|
Monitor *m;
|
|
Monitor *m;
|
|
|
XEvent ev;
|
|
XEvent ev;
|
|
|
|
|
+ Time lasttime = 0;
|
|
|
|
|
|
|
|
if(!(c = selmon->sel))
|
|
if(!(c = selmon->sel))
|
|
|
return;
|
|
return;
|
|
@@ -1145,6 +1146,10 @@ movemouse(const Arg *arg) {
|
|
|
handler[ev.type](&ev);
|
|
handler[ev.type](&ev);
|
|
|
break;
|
|
break;
|
|
|
case MotionNotify:
|
|
case MotionNotify:
|
|
|
|
|
+ if ((ev.xmotion.time - lasttime) <= (1000 / 60))
|
|
|
|
|
+ continue;
|
|
|
|
|
+ lasttime = ev.xmotion.time;
|
|
|
|
|
+
|
|
|
nx = ocx + (ev.xmotion.x - x);
|
|
nx = ocx + (ev.xmotion.x - x);
|
|
|
ny = ocy + (ev.xmotion.y - y);
|
|
ny = ocy + (ev.xmotion.y - y);
|
|
|
if(nx >= selmon->wx && nx <= selmon->wx + selmon->ww
|
|
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
|
|
void
|
|
|
resizemouse(const Arg *arg) {
|
|
resizemouse(const Arg *arg) {
|
|
|
- int ocx, ocy;
|
|
|
|
|
- int nw, nh;
|
|
|
|
|
|
|
+ int ocx, ocy, nw, nh;
|
|
|
Client *c;
|
|
Client *c;
|
|
|
Monitor *m;
|
|
Monitor *m;
|
|
|
XEvent ev;
|
|
XEvent ev;
|
|
|
|
|
+ Time lasttime = 0;
|
|
|
|
|
|
|
|
if(!(c = selmon->sel))
|
|
if(!(c = selmon->sel))
|
|
|
return;
|
|
return;
|
|
@@ -1290,6 +1295,10 @@ resizemouse(const Arg *arg) {
|
|
|
handler[ev.type](&ev);
|
|
handler[ev.type](&ev);
|
|
|
break;
|
|
break;
|
|
|
case MotionNotify:
|
|
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);
|
|
nw = MAX(ev.xmotion.x - ocx - 2 * c->bw + 1, 1);
|
|
|
nh = MAX(ev.xmotion.y - ocy - 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 <= selmon->wx + selmon->ww
|
|
if(c->mon->wx + nw >= selmon->wx && c->mon->wx + nw <= selmon->wx + selmon->ww
|