anchor.diff:                       (t (setf height new-h)))))
       (unless (pinned-p window)
         (setf (xlib:drawable-x window) x
  -	    (xlib:drawable-y window) y
  -	    (xlib:drawable-width window) width
  -	    (xlib:drawable-height window) height))
  +            (xlib:drawable-y window) y
  +            (xlib:drawable-width window) width
  +            (xlib:drawable-height window) height))
       (values x y width height dx dy dw dh)))
   
   (defun win= (a b)
  
positive.code:   (let ((win (find (if class class (x11-capitalize program))
                     *windows* :test #'string-equal :key #'xclass)))
      (if win
  	(focus win)
  	(run program))))
  
  (defun send-message (window type &rest data)
    (xlib:send-event window :client-message nil :window window
  
negative.code: 
  (defhandler :configure-request (window x y width height value-mask)
    (let ((list-mask (loop for i below 4
                           when (= (ldb (byte 1 i) value-mask) 1)
                             nconc (case i
                                     (0 (list :x x))
                                     (1 (list :y y))
                                     (2 (list :width width))
                                     (3 (list :height height))))))
      (xlib:with-state (window)
        (restart-case (when list-mask (apply #'move window list-mask))
          (window-error (c)
            (format t "~&configure-request: ~a ~a~%" c window)
            'processed)
          (value-error (c)
            (format t "~&configure-request: ~a ~a~%" c window)
            'processed)))))
  
  #+clx-ext-randr
  (defhandler :rr-screen-change-notify (width height)
    (setf (xlib:screen-width *screen*) width
          (xlib:screen-height *screen*) height))
  
  #+clx-ext-randr
  (defhandler :rr-crtc-change-notify (rotation)
    (let ((rotation (first (xlib:make-rotation-keys rotation))))
      (case rotation
        ((:rotate-0 :rotate-180) (when (> (xlib:screen-height *screen*) (xlib:screen-width *screen*))
                                   (rotatef (xlib:screen-width *screen*) (xlib:screen-height *screen*))))
        ((:rotate-90 :rotate-270) (when (> (xlib:screen-width *screen*) (xlib:screen-height *screen*))
                                    (rotatef (xlib:screen-width *screen*) (xlib:screen-height *screen*)))))))
  
  ;; Restart functions
  (defmacro defrestart (name)
  