- (move-overlay compare-windows-overlay2 beg2 end2 buf2)
- (setq compare-windows-overlay2 (make-overlay beg2 end2 buf2))
- (overlay-put compare-windows-overlay2 'face 'compare-windows-face)
- (overlay-put compare-windows-overlay2 'priority 1))
- ;; Remove highlighting before next command is executed
- (add-hook 'pre-command-hook 'compare-windows-dehighlight)))
+ (move-overlay compare-windows-overlay2 beg2 end2 b2)
+ (setq compare-windows-overlay2 (make-overlay beg2 end2 b2))
+ (overlay-put compare-windows-overlay2 'face 'compare-windows)
+ (overlay-put compare-windows-overlay2 'priority 1000))
+ (overlay-put compare-windows-overlay2 'window w2)
+ (if (not (eq compare-windows-highlight 'persistent))
+ ;; Remove highlighting before next command is executed
+ (add-hook 'pre-command-hook 'compare-windows-dehighlight)
+ (when compare-windows-overlay1
+ (push (copy-overlay compare-windows-overlay1) compare-windows-overlays1)
+ (delete-overlay compare-windows-overlay1))
+ (when compare-windows-overlay2
+ (push (copy-overlay compare-windows-overlay2) compare-windows-overlays2)
+ (delete-overlay compare-windows-overlay2)))))