]> git.eshelyaron.com Git - emacs.git/commitdiff
Set `mark-active' to selected window
authorOleh Krehel <ohwoeowho@gmail.com>
Tue, 31 Mar 2015 12:57:24 +0000 (14:57 +0200)
committerOleh Krehel <ohwoeowho@gmail.com>
Tue, 31 Mar 2015 12:57:24 +0000 (14:57 +0200)
* lisp/simple.el (activate-mark): Update.
(redisplay--update-region-highlights): When a buffer is displayed
multiply, update highlight only in the window equal to mark-active,
i.e. the one in which the mark was activated.

lisp/simple.el

index ce6e24e7cba9f300d2346968406308c9ba997887..0b33a51b41cfafda6e7cb22c3a232cec1a029d62 100644 (file)
@@ -4835,7 +4835,7 @@ If NO-TMM is non-nil, leave `transient-mark-mode' alone."
   (when (mark t)
     (unless (region-active-p)
       (force-mode-line-update) ;Refresh toolbar (bug#16382).
-      (setq mark-active t)
+      (setq mark-active (selected-window))
       (unless (or transient-mark-mode no-tmm)
         (setq-local transient-mark-mode 'lambda))
       (run-hooks 'activate-mark-hook))))
@@ -4958,9 +4958,8 @@ also checks the value of `use-empty-active-region'."
           (mapc #'redisplay--update-region-highlight
                 (delq nil
                       (mapcar (lambda (w)
-                                (unless (eq (window-buffer w)
-                                            (current-buffer))
-                                  w))
+                                (and (eq w mark-active)
+                                     w))
                               windows)))
         (let ((msw (and (window-minibuffer-p) (minibuffer-selected-window))))
           (dolist (w windows)