summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1996-01-15 05:05:20 +0000
committerRichard M. Stallman <rms@gnu.org>1996-01-15 05:05:20 +0000
commit67367a54b6d9488205973c2fe060dd8037b477ca (patch)
tree2b97e9e6e5b8f43799e39921a6b75598da10f447
parent074c328d844ac32160412f92b2421b268269ef6b (diff)
downloademacs-67367a54b6d9488205973c2fe060dd8037b477ca.tar.gz
(display_buffer_1): Don't deiconify the selected frame.
-rw-r--r--src/window.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/window.c b/src/window.c
index 689bf0dcb7c..8909f034817 100644
--- a/src/window.c
+++ b/src/window.c
@@ -1947,7 +1947,15 @@ before each command.")
return window;
}
-/* Deiconify the frame containing the window WINDOW, then return WINDOW. */
+/* Deiconify the frame containing the window WINDOW,
+ unless it is the selected frame;
+ then return WINDOW.
+
+ The reason for the exception for the selected frame
+ is that it seems better not to change the selected frames visibility
+ merely because of displaying a different buffer in it.
+ The deiconification is useful when a buffer gets shown in
+ another frame that you were not using lately. */
static Lisp_Object
display_buffer_1 (window)
@@ -1956,7 +1964,8 @@ display_buffer_1 (window)
#ifdef MULTI_FRAME
FRAME_PTR f = XFRAME (WINDOW_FRAME (XWINDOW (window)));
FRAME_SAMPLE_VISIBILITY (f);
- if (FRAME_ICONIFIED_P (f))
+ if (FRAME_ICONIFIED_P (f)
+ && f != selected_frame)
Fmake_frame_visible (WINDOW_FRAME (XWINDOW (window)));
#endif
return window;