summaryrefslogtreecommitdiff
path: root/lisp/window.el
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2005-01-20 14:23:23 +0000
committerStefan Monnier <monnier@iro.umontreal.ca>2005-01-20 14:23:23 +0000
commit66c226bf5a1e8289b0ce676d5e4225810a11af91 (patch)
tree0d30aeb7074ed45d094303a05d086a24e4f19891 /lisp/window.el
parentf0d3d9feb068b5bff633efaf355c31706caaa94f (diff)
downloademacs-66c226bf5a1e8289b0ce676d5e4225810a11af91.tar.gz
(handle-select-window): Don't switch window when we're in the minibuffer.
Diffstat (limited to 'lisp/window.el')
-rw-r--r--lisp/window.el10
1 files changed, 8 insertions, 2 deletions
diff --git a/lisp/window.el b/lisp/window.el
index 5ec752f3f23..5768436eaae 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -1,6 +1,6 @@
;;; window.el --- GNU Emacs window commands aside from those written in C
-;; Copyright (C) 1985, 1989, 1992, 1993, 1994, 2000, 2001, 2002, 2004
+;; Copyright (C) 1985, 1989, 1992, 1993, 1994, 2000, 2001, 2002, 2004, 2005
;; Free Software Foundation, Inc.
;; Maintainer: FSF
@@ -631,6 +631,12 @@ and the buffer that is killed or buried is the one in that window."
(interactive "e")
(let ((window (posn-window (event-start event))))
(if (and (window-live-p window)
+ ;; Don't switch if we're currently in the minibuffer.
+ ;; This tries to work around problems where the minibuffer gets
+ ;; unselected unexpectedly, and where you then have to move
+ ;; your mouse all the way down to the minibuffer to select it.
+ (not (window-minibuffer-p (selected-window)))
+ ;; Don't switch to a minibuffer window unless it's active.
(or (not (window-minibuffer-p window))
(minibuffer-window-active-p window)))
(select-window window))))
@@ -643,5 +649,5 @@ and the buffer that is killed or buried is the one in that window."
(define-key ctl-x-map "+" 'balance-windows)
(define-key ctl-x-4-map "0" 'kill-buffer-and-window)
-;;; arch-tag: b508dfcc-c353-4c37-89fa-e773fe10cea9
+;; arch-tag: b508dfcc-c353-4c37-89fa-e773fe10cea9
;;; window.el ends here