aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/window.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/window.c b/src/window.c
index f11fed9a2df..cbf4d0f062a 100644
--- a/src/window.c
+++ b/src/window.c
@@ -2486,11 +2486,18 @@ by `current-window-configuration' (which see).")
2486 } 2486 }
2487 2487
2488 FRAME_ROOT_WINDOW (f) = data->root_window; 2488 FRAME_ROOT_WINDOW (f) = data->root_window;
2489 /* We also need to restore the frame's selected window; that's taken
2490 care of below, either by calling Fselect_window, or by explicit
2491 assignment. */
2489 2492
2493#if 0 /* I don't understand why this is needed, and it causes
2494 problems when the frame's old selected window has been
2495 deleted. */
2490#ifdef MULTI_FRAME 2496#ifdef MULTI_FRAME
2491 if (f != selected_frame && ! FRAME_TERMCAP_P (f)) 2497 if (f != selected_frame && ! FRAME_TERMCAP_P (f))
2492 Fselect_frame (WINDOW_FRAME (XWINDOW (data->root_window)), Qnil); 2498 Fselect_frame (WINDOW_FRAME (XWINDOW (data->root_window)), Qnil);
2493#endif 2499#endif
2500#endif
2494 2501
2495 /* Set the screen height to the value it had before this function. */ 2502 /* Set the screen height to the value it had before this function. */
2496 if (frame_size_change) 2503 if (frame_size_change)
@@ -2504,6 +2511,8 @@ by `current-window-configuration' (which see).")
2504 else 2511 else
2505 Fset_buffer (XWINDOW (selected_window)->buffer); 2512 Fset_buffer (XWINDOW (selected_window)->buffer);
2506 } 2513 }
2514 else
2515 FRAME_SELECTED_WINDOW (f) = data->current_window;
2507 2516
2508 Vminibuf_scroll_window = data->minibuf_scroll_window; 2517 Vminibuf_scroll_window = data->minibuf_scroll_window;
2509 return (Qnil); 2518 return (Qnil);