summaryrefslogtreecommitdiff
path: root/src/minibuf.c
diff options
context:
space:
mode:
authorKarl Heuer <kwzh@gnu.org>1995-11-04 00:21:08 +0000
committerKarl Heuer <kwzh@gnu.org>1995-11-04 00:21:08 +0000
commitec3019a8067b8cd87e4d5d159789d41d4f52ed0b (patch)
tree8248b9968b9c853a8d1976360c48f13c26d3c4d3 /src/minibuf.c
parentb14039d25ca0b807ff838f7cb3072a5722d25c3a (diff)
downloademacs-ec3019a8067b8cd87e4d5d159789d41d4f52ed0b.tar.gz
(choose_minibuf_frame): Moved here from frame.c.
Diffstat (limited to 'src/minibuf.c')
-rw-r--r--src/minibuf.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/minibuf.c b/src/minibuf.c
index fa20bbca9c9..fc8e2ef5061 100644
--- a/src/minibuf.c
+++ b/src/minibuf.c
@@ -102,6 +102,27 @@ extern Lisp_Object Vminibuf_scroll_window;
extern Lisp_Object Voverriding_local_map;
+/* Put minibuf on currently selected frame's minibuffer.
+ We do this whenever the user starts a new minibuffer
+ or when a minibuffer exits. */
+
+void
+choose_minibuf_frame ()
+{
+ if (selected_frame != 0
+ && !EQ (minibuf_window, selected_frame->minibuffer_window))
+ {
+ /* I don't think that any frames may validly have a null minibuffer
+ window anymore. */
+ if (NILP (selected_frame->minibuffer_window))
+ abort ();
+
+ Fset_window_buffer (selected_frame->minibuffer_window,
+ XWINDOW (minibuf_window)->buffer);
+ minibuf_window = selected_frame->minibuffer_window;
+ }
+}
+
/* Actual minibuffer invocation. */
void read_minibuf_unwind ();