mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-23 07:19:15 +00:00
(read_minibuf): Call choose_minibuffer_frame.
First save the previous minibuf_window. (read_minibuf_unwind): Restore old minibuf_window.
This commit is contained in:
parent
2bb07400c9
commit
c5b6b68020
@ -148,12 +148,12 @@ read_minibuf (map, initial, prompt, backup_n, expflag, histvar, histpos)
|
|||||||
if (!enable_recursive_minibuffers
|
if (!enable_recursive_minibuffers
|
||||||
&& minibuf_level > 0
|
&& minibuf_level > 0
|
||||||
&& (EQ (selected_window, minibuf_window)))
|
&& (EQ (selected_window, minibuf_window)))
|
||||||
#if 0
|
|
||||||
|| selected_frame != XFRAME (WINDOW_FRAME (XWINDOW (minibuf_window)))
|
|
||||||
#endif
|
|
||||||
error ("Command attempted to use minibuffer while in minibuffer");
|
error ("Command attempted to use minibuffer while in minibuffer");
|
||||||
|
|
||||||
/* Could we simply bind these variables instead? */
|
/* Could we simply bind these variables instead? */
|
||||||
|
minibuf_save_list
|
||||||
|
= Fcons (Voverriding_local_map,
|
||||||
|
Fcons (minibuf_window, minibuf_save_list));
|
||||||
minibuf_save_list
|
minibuf_save_list
|
||||||
= Fcons (minibuf_prompt,
|
= Fcons (minibuf_prompt,
|
||||||
Fcons (make_number (minibuf_prompt_width),
|
Fcons (make_number (minibuf_prompt_width),
|
||||||
@ -161,13 +161,15 @@ read_minibuf (map, initial, prompt, backup_n, expflag, histvar, histpos)
|
|||||||
Fcons (Vcurrent_prefix_arg,
|
Fcons (Vcurrent_prefix_arg,
|
||||||
Fcons (Vminibuffer_history_position,
|
Fcons (Vminibuffer_history_position,
|
||||||
Fcons (Vminibuffer_history_variable,
|
Fcons (Vminibuffer_history_variable,
|
||||||
Fcons (Voverriding_local_map,
|
minibuf_save_list))))));
|
||||||
minibuf_save_list)))))));
|
|
||||||
minibuf_prompt_width = 0; /* xdisp.c puts in the right value. */
|
minibuf_prompt_width = 0; /* xdisp.c puts in the right value. */
|
||||||
minibuf_prompt = Fcopy_sequence (prompt);
|
minibuf_prompt = Fcopy_sequence (prompt);
|
||||||
Vminibuffer_history_position = histpos;
|
Vminibuffer_history_position = histpos;
|
||||||
Vminibuffer_history_variable = histvar;
|
Vminibuffer_history_variable = histvar;
|
||||||
|
|
||||||
|
choose_minibuf_frame ();
|
||||||
|
|
||||||
record_unwind_protect (Fset_window_configuration,
|
record_unwind_protect (Fset_window_configuration,
|
||||||
Fcurrent_window_configuration (Qnil));
|
Fcurrent_window_configuration (Qnil));
|
||||||
|
|
||||||
@ -407,6 +409,8 @@ read_minibuf_unwind (data)
|
|||||||
minibuf_save_list = Fcdr (minibuf_save_list);
|
minibuf_save_list = Fcdr (minibuf_save_list);
|
||||||
Voverriding_local_map = Fcar (minibuf_save_list);
|
Voverriding_local_map = Fcar (minibuf_save_list);
|
||||||
minibuf_save_list = Fcdr (minibuf_save_list);
|
minibuf_save_list = Fcdr (minibuf_save_list);
|
||||||
|
minibuf_window = Fcar (minibuf_save_list);
|
||||||
|
minibuf_save_list = Fcdr (minibuf_save_list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user