anchor.diff:    - the parent's transformation changed
     - the parent's mirror region changed
   
  -Also if the sheet's native transformation changes the mirror's contents need
  -to be redrawn, which is achieved by calling PORT-DIRTY-MIRROR-REGION.
  +Also if the sheet's native transformation changes, the mirror's contents need
  +to be redrawn, which is achieved by calling PORT-DIRTY-MIRROR-REGION. TODO is this true?
   
   Since changing the sheet's native transformation might thus be expensive,
   this function tries to minimize changes to it. (although it does not try
  
positive.code:                          (mirror (sheet-direct-mirror sheet)))
                       (port-set-mirror-region port mirror MR)
                       (port-set-mirror-transformation port mirror MT)))
                   ;; update the native transformation if neccessary.
                   (unless (and old-native-transformation
                                (transformation-equal native-transformation
                                                      old-native-transformation))
  
negative.code:                (MT (make-translation-transformation x1 y1))
                 (MR (make-rectangle* 0 0 (round (- x2 x1)) (round (- y2 y1))))
                 (native-transformation
                   ;; NT = T o PNT o MT⁻¹
                   (compose-transformations
                    (invert-transformation MT)
                    (compose-transformations (sheet-native-transformation (sheet-parent sheet))
                                             (sheet-transformation sheet))))
                 (old-native-transformation
                   (%%sheet-native-transformation sheet)))
  
            (cond ((and (> (round (- x2 x1)) 0)
                        (> (round (- y2 y1)) 0))
  