anchor.diff:  (defvar last-button nil)
   (defvar last-x nil)
   (defvar last-y nil)
  +(defvar last-center nil)
   (defvar last-motion nil)
   (defvar waiting-shortcut nil)
   
  
positive.code:             (t
               (cond ((sc= *move* state code)
                      (setf last-x x last-y y))
                     ((sc= *resize* state code)
  		    (let ((x (xlib:drawable-x window))
  			  (y (xlib:drawable-y window))
  			  (width (xlib:drawable-width window))
  			  (height (xlib:drawable-height window)))
  		      ;; here i use [last-x; last-y] as the [x; y]
  		      ;; position of the current window
  		      (setf last-x x last-y y)
  		      (xlib:warp-pointer window width height))))
               (setf last-button code)
               (focus window)
  
negative.code: 		   (incf last-x dx)
  		   (incf last-y dy)))
  		((= last-button (code *resize*))
  		 (move window :width delta-x :height delta-y))
  		((= last-button (code *center-resize*))
  		 (move window :x (- (first last-center) (truncate delta-x 2))
  			      :y (- (second last-center) (truncate delta-y 2))
  			      :width delta-x :height delta-y))))
  	(setf last-motion time)))))
  
  (defhandler :button-release () (ungrab-mouse))
  