@ -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