Commit e8121f2a authored by Jim Blandy's avatar Jim Blandy
Browse files

* window.c (Fset_window_configuration): Don't select the frame

	just because we restored its configuration.

	* window.c (Fset_window_configuration): Don't forget to set the
	frame's selected window when we can't call Fselect_window.
parent 28430d3c
...@@ -2486,10 +2486,17 @@ by `current-window-configuration' (which see).") ...@@ -2486,10 +2486,17 @@ by `current-window-configuration' (which see).")
} }
FRAME_ROOT_WINDOW (f) = data->root_window; FRAME_ROOT_WINDOW (f) = data->root_window;
/* We also need to restore the frame's selected window; that's taken
care of below, either by calling Fselect_window, or by explicit
assignment. */
#if 0 /* I don't understand why this is needed, and it causes
problems when the frame's old selected window has been
deleted. */
if (f != selected_frame && ! FRAME_TERMCAP_P (f)) if (f != selected_frame && ! FRAME_TERMCAP_P (f))
Fselect_frame (WINDOW_FRAME (XWINDOW (data->root_window)), Qnil); Fselect_frame (WINDOW_FRAME (XWINDOW (data->root_window)), Qnil);
#endif #endif
/* Set the screen height to the value it had before this function. */ /* Set the screen height to the value it had before this function. */
...@@ -2504,6 +2511,8 @@ by `current-window-configuration' (which see).") ...@@ -2504,6 +2511,8 @@ by `current-window-configuration' (which see).")
else else
Fset_buffer (XWINDOW (selected_window)->buffer); Fset_buffer (XWINDOW (selected_window)->buffer);
} }
FRAME_SELECTED_WINDOW (f) = data->current_window;
Vminibuf_scroll_window = data->minibuf_scroll_window; Vminibuf_scroll_window = data->minibuf_scroll_window;
return (Qnil); return (Qnil);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment