From: Chong Yidong Date: Tue, 8 Apr 2008 05:38:39 +0000 (+0000) Subject: (mwheel-scroll): Deactivate any temporarily active region if point X-Git-Tag: emacs-pretest-23.0.90~6450 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=05786f2d93c238651290639638b1007eab20a7ac;p=emacs.git (mwheel-scroll): Deactivate any temporarily active region if point moves. --- diff --git a/lisp/mwheel.el b/lisp/mwheel.el index 908dc3a6fff..8236d08dbc9 100644 --- a/lisp/mwheel.el +++ b/lisp/mwheel.el @@ -190,6 +190,10 @@ This should only be bound to mouse buttons 4 and 5." (prog1 (selected-window) (select-window (mwheel-event-window event))))) + (buffer (window-buffer curwin)) + (opoint (with-current-buffer buffer + (when (eq (car-safe transient-mark-mode) 'only) + (point)))) (mods (delq 'click (delq 'double (delq 'triple (event-modifiers event))))) (amt (assoc mods mouse-wheel-scroll-amount))) @@ -224,7 +228,13 @@ This should only be bound to mouse buttons 4 and 5." ;; Make sure we do indeed scroll to the end of the buffer. (end-of-buffer (while t (scroll-up))))) (t (error "Bad binding in mwheel-scroll")))) - (if curwin (select-window curwin)))) + (if curwin (select-window curwin))) + ;; If there is a temporarily active region, deactivate it iff + ;; scrolling moves point. + (when opoint + (with-current-buffer buffer + (when (/= opoint (point)) + (deactivate-mark))))) (when (and mouse-wheel-click-event mouse-wheel-inhibit-click-time) (if mwheel-inhibit-click-event-timer (cancel-timer mwheel-inhibit-click-event-timer)