From: Chong Yidong Date: Sat, 2 Dec 2006 21:47:02 +0000 (+0000) Subject: (mouse-drag-track): Suppress automatic hscrolling for initial down X-Git-Tag: emacs-pretest-22.0.92~352 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=a9d0154753823698c01d9f628bc66951e31dfecf;p=emacs.git (mouse-drag-track): Suppress automatic hscrolling for initial down event. --- diff --git a/lisp/mouse.el b/lisp/mouse.el index 23a2cab4740..b60552f1183 100644 --- a/lisp/mouse.el +++ b/lisp/mouse.el @@ -925,7 +925,11 @@ should only be used by mouse-drag-region." (click-count (1- (event-click-count start-event))) (remap-double-click (and on-link (eq mouse-1-click-follows-link 'double) - (= click-count 1)))) + (= click-count 1))) + ;; Suppress automatic hscrolling, because that is a nuisance + ;; when setting point near the right fringe (but see below). + (automatic-hscrolling-saved automatic-hscrolling) + (automatic-hscrolling nil)) (setq mouse-selection-click-count click-count) ;; In case the down click is in the middle of some intangible text, ;; use the end of that text, and put it in START-POINT. @@ -946,6 +950,11 @@ should only be used by mouse-drag-region." (memq (car-safe event) '(switch-frame select-window)))) (if (memq (car-safe event) '(switch-frame select-window)) nil + ;; Automatic hscrolling did not occur during the call to + ;; `read-event'; but if the user subsequently drags the + ;; mouse, go ahead and hscroll. + (let ((automatic-hscrolling automatic-hscrolling-saved)) + (redisplay)) (setq end (event-end event) end-point (posn-point end)) (if (numberp end-point)