aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/mouse.el
diff options
context:
space:
mode:
authorStefan Monnier2005-01-11 15:36:57 +0000
committerStefan Monnier2005-01-11 15:36:57 +0000
commitfbd8dc8a0d448042c362edf2e475a0109548870e (patch)
tree25894fca88ed2b76ef61607a30659ecb94dd0d69 /lisp/mouse.el
parentd3ceff9134643dbac15099219dcac175e3b0c2b8 (diff)
downloademacs-fbd8dc8a0d448042c362edf2e475a0109548870e.tar.gz
emacs-fbd8dc8a0d448042c362edf2e475a0109548870e.zip
(mouse-drag-mode-line-1, mouse-drag-vertical-line, mouse-drag-region)
(mouse-drag-region-1, mouse-drag-secondary): Ignore select-window events rather than fiddle with mouse-autoselect-window.
Diffstat (limited to 'lisp/mouse.el')
-rw-r--r--lisp/mouse.el23
1 files changed, 11 insertions, 12 deletions
diff --git a/lisp/mouse.el b/lisp/mouse.el
index 63e0f6c9d91..ea6aa90e3c7 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -1,6 +1,6 @@
1;;; mouse.el --- window system-independent mouse support 1;;; mouse.el --- window system-independent mouse support
2 2
3;; Copyright (C) 1993, 94, 95, 1999, 2000, 2001, 2002, 2003, 2004 3;; Copyright (C) 1993, 94, 95, 1999, 2000, 2001, 2002, 2003, 2004, 2005
4;; Free Software Foundation, Inc. 4;; Free Software Foundation, Inc.
5 5
6;; Maintainer: FSF 6;; Maintainer: FSF
@@ -397,7 +397,6 @@ MODE-LINE-P non-nil means dragging a mode line; nil means a header line."
397 (start-nwindows (count-windows t)) 397 (start-nwindows (count-windows t))
398 (old-selected-window (selected-window)) 398 (old-selected-window (selected-window))
399 (minibuffer (frame-parameter nil 'minibuffer)) 399 (minibuffer (frame-parameter nil 'minibuffer))
400 (mouse-autoselect-window nil)
401 should-enlarge-minibuffer event mouse y top bot edges wconfig growth) 400 should-enlarge-minibuffer event mouse y top bot edges wconfig growth)
402 (track-mouse 401 (track-mouse
403 (progn 402 (progn
@@ -435,7 +434,7 @@ MODE-LINE-P non-nil means dragging a mode line; nil means a header line."
435 (cond ((integerp event) 434 (cond ((integerp event)
436 (setq done t)) 435 (setq done t))
437 436
438 ((eq (car event) 'switch-frame) 437 ((memq (car event) '(switch-frame select-window))
439 nil) 438 nil)
440 439
441 ((not (memq (car event) '(mouse-movement scroll-bar-movement))) 440 ((not (memq (car event) '(mouse-movement scroll-bar-movement)))
@@ -582,7 +581,7 @@ resized by dragging their header-line."
582 ;; unknown event. 581 ;; unknown event.
583 (cond ((integerp event) 582 (cond ((integerp event)
584 (setq done t)) 583 (setq done t))
585 ((eq (car event) 'switch-frame) 584 ((memq (car event) '(switch-frame select-window))
586 nil) 585 nil)
587 ((not (memq (car event) 586 ((not (memq (car event)
588 '(mouse-movement scroll-bar-movement))) 587 '(mouse-movement scroll-bar-movement)))
@@ -754,10 +753,9 @@ remains active. Otherwise, it remains until the next input event.
754 753
755If the click is in the echo area, display the `*Messages*' buffer." 754If the click is in the echo area, display the `*Messages*' buffer."
756 (interactive "e") 755 (interactive "e")
757 (let ((w (posn-window (event-start start-event))) 756 (let ((w (posn-window (event-start start-event))))
758 (mouse-autoselect-window nil)) 757 (if (and (window-minibuffer-p w)
759 (if (not (or (not (window-minibuffer-p w)) 758 (not (minibuffer-window-active-p w)))
760 (minibuffer-window-active-p w)))
761 (save-excursion 759 (save-excursion
762 (read-event) 760 (read-event)
763 (set-buffer "*Messages*") 761 (set-buffer "*Messages*")
@@ -858,8 +856,8 @@ at the same position."
858 (while (progn 856 (while (progn
859 (setq event (read-event)) 857 (setq event (read-event))
860 (or (mouse-movement-p event) 858 (or (mouse-movement-p event)
861 (eq (car-safe event) 'switch-frame))) 859 (memq (car-safe event) '(switch-frame select-window))))
862 (if (eq (car-safe event) 'switch-frame) 860 (if (memq (car-safe event) '(switch-frame select-window))
863 nil 861 nil
864 (setq end (event-end event) 862 (setq end (event-end event)
865 end-point (posn-point end)) 863 end-point (posn-point end))
@@ -1153,6 +1151,7 @@ If MODE is 2 then do the same for lines."
1153 (move-overlay mouse-drag-overlay (point) (mark t))) 1151 (move-overlay mouse-drag-overlay (point) (mark t)))
1154 (catch 'mouse-show-mark 1152 (catch 'mouse-show-mark
1155 ;; In this loop, execute scroll bar and switch-frame events. 1153 ;; In this loop, execute scroll bar and switch-frame events.
1154 ;; Should we similarly handle `select-window' events? --Stef
1156 ;; Also ignore down-events that are undefined. 1155 ;; Also ignore down-events that are undefined.
1157 (while (progn (setq event (read-event)) 1156 (while (progn (setq event (read-event))
1158 (setq events (append events (list event))) 1157 (setq events (append events (list event)))
@@ -1476,9 +1475,9 @@ The function returns a non-nil value if it creates a secondary selection."
1476 (while (progn 1475 (while (progn
1477 (setq event (read-event)) 1476 (setq event (read-event))
1478 (or (mouse-movement-p event) 1477 (or (mouse-movement-p event)
1479 (eq (car-safe event) 'switch-frame))) 1478 (memq (car-safe event) '(switch-frame select-window))))
1480 1479
1481 (if (eq (car-safe event) 'switch-frame) 1480 (if (memq (car-safe event) '(switch-frame select-window))
1482 nil 1481 nil
1483 (setq end (event-end event) 1482 (setq end (event-end event)
1484 end-point (posn-point end)) 1483 end-point (posn-point end))