summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2014-08-07 14:35:54 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2014-08-07 14:35:54 -0400
commit87eb576e30481ddf4d8daec020f8f78a62c02a2c (patch)
treef09f63cb5d68f1794c314263811265d9fd7f6c7d
parent8db811eff1b890cfc12e065d86a9f93bf974e364 (diff)
downloademacs-87eb576e30481ddf4d8daec020f8f78a62c02a2c.tar.gz
* lisp/info.el (Info-mode-map): Override a global down-mouse-2 binding.
Fixes: debbugs:18212
-rw-r--r--lisp/ChangeLog13
-rw-r--r--lisp/info.el1
-rw-r--r--lisp/mouse.el17
3 files changed, 18 insertions, 13 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 89f463a2fb0..783bee53dbb 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,9 +1,14 @@
+2014-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * info.el (Info-mode-map): Override a global down-mouse-2 binding
+ (bug#18212).
+
2014-08-05 Eli Zaretskii <eliz@gnu.org>
* simple.el (default-line-height): A floating-point value of
line-spacing means a fraction of the default frame font's height,
- not of the font currently used by the 'default' face. Truncate
- the pixel value, like the display engine does.
+ not of the font currently used by the 'default' face.
+ Truncate the pixel value, like the display engine does.
(window-screen-lines): Use window-inside-pixel-edges for
determining the window height in pixels. (Bug#18195)
@@ -105,8 +110,8 @@
2014-07-19 Fabián Ezequiel Gallina <fgallina@gnu.org>
Fix Python shell prompts detection for remote hosts.
- * progmodes/python.el (python-shell-prompt-detect): Replace
- call-process with process-file and make it more robust.
+ * progmodes/python.el (python-shell-prompt-detect):
+ Replace call-process with process-file and make it more robust.
2014-07-17 Fabián Ezequiel Gallina <fgallina@gnu.org>
diff --git a/lisp/info.el b/lisp/info.el
index 2b2490b5bdc..31ef1081dcc 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -3994,6 +3994,7 @@ If FORK is non-nil, it is passed to `Info-goto-node'."
(define-key map "," 'Info-index-next)
(define-key map "\177" 'Info-scroll-down)
(define-key map [mouse-2] 'Info-mouse-follow-nearest-node)
+ (define-key map [down-mouse-2] 'ignore) ;Override potential global binding.
(define-key map [follow-link] 'mouse-face)
(define-key map [XF86Back] 'Info-history-back)
(define-key map [XF86Forward] 'Info-history-forward)
diff --git a/lisp/mouse.el b/lisp/mouse.el
index ce691748cac..1cbff687c64 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -94,15 +94,14 @@ point at the click position."
(defun mouse--down-1-maybe-follows-link (&optional _prompt)
"Turn `mouse-1' events into `mouse-2' events if follows-link.
Expects to be bound to `down-mouse-1' in `key-translation-map'."
- (if (or (null mouse-1-click-follows-link)
- (not (eq (if (eq mouse-1-click-follows-link 'double)
- 'double-down-mouse-1 'down-mouse-1)
- (car-safe last-input-event)))
- (not (mouse-on-link-p (event-start last-input-event)))
- (and (not mouse-1-click-in-non-selected-windows)
- (not (eq (selected-window)
- (posn-window (event-start last-input-event))))))
- nil
+ (when (and mouse-1-click-follows-link
+ (eq (if (eq mouse-1-click-follows-link 'double)
+ 'double-down-mouse-1 'down-mouse-1)
+ (car-safe last-input-event))
+ (mouse-on-link-p (event-start last-input-event))
+ (or mouse-1-click-in-non-selected-windows
+ (eq (selected-window)
+ (posn-window (event-start last-input-event)))))
(let ((this-event last-input-event)
(timedout
(sit-for (if (numberp mouse-1-click-follows-link)