anchor.diff:  
   (defun finder ()
     (grab-keyboard *root*)
  -  (unwind-protect (recdo (windows) #'focus :key #'xclass :matcher #'in-matcher)
  +  (unwind-protect (recdo *windows* #'focus :key #'xclass :matcher #'in-matcher)
       (ungrab-keyboard *display*)))
   
   ;;; Mouse shorcuts
  
positive.code:   (let* ((grouper (grouper *curr*))
           (windows (if (functionp grouper)
                        (remove-if #'(lambda (w) (and (funcall grouper w)
                                                      (not (win= w *curr*)))) (windows))
                        (windows)))
           (n (length windows))
           (nw (or (position *curr* windows :test #'win=) 0)))
      (unless (zerop n)
        (nth (mod (funcall way nw) n) windows))))
  
  (defun minus (window)
    "House keeping when window is unmapped. Returns the window to be
  focused."
    (when (win= *curr* window)
      (setf *curr* nil *dim* nil))
    (when (win= *last* window) (setf *last* nil))
    (when (null *last*) (setf *last* (next)))
    (when (null *curr*)
  
negative.code: 
  (defhandler :map-notify (window override-redirect-p)
    (unless override-redirect-p
      (focus (plus window))))
  
  (defhandler :unmap-notify (window) (focus (minus window)))
  
  