diff options
Diffstat (limited to 'src/minibuf.c')
-rw-r--r-- | src/minibuf.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/minibuf.c b/src/minibuf.c index 9c56ea8618e..e4296ad8cd2 100644 --- a/src/minibuf.c +++ b/src/minibuf.c @@ -35,6 +35,7 @@ Boston, MA 02110-1301, USA. */ #include "syntax.h" #include "intervals.h" #include "keymap.h" +#include "termhooks.h" extern int quit_char; @@ -474,7 +475,6 @@ read_minibuf (map, initial, prompt, backup_n, expflag, specbind (Qminibuffer_default, defalt); - single_kboard_state (); #ifdef HAVE_X_WINDOWS if (display_hourglass_p) cancel_hourglass (); @@ -558,6 +558,8 @@ read_minibuf (map, initial, prompt, backup_n, expflag, if (minibuffer_auto_raise) Fraise_frame (mini_frame); + temporarily_switch_to_single_kboard (XFRAME (mini_frame)); + /* We have to do this after saving the window configuration since that is what restores the current buffer. */ @@ -733,8 +735,12 @@ read_minibuf (map, initial, prompt, backup_n, expflag, XWINDOW (minibuf_window)->cursor.x = 0; XWINDOW (minibuf_window)->must_be_updated_p = 1; update_frame (XFRAME (selected_frame), 1, 1); - if (rif && rif->flush_display) - rif->flush_display (XFRAME (XWINDOW (minibuf_window)->frame)); + { + struct frame *f = XFRAME (XWINDOW (minibuf_window)->frame); + struct redisplay_interface *rif = FRAME_RIF (f); + if (rif && rif->flush_display) + rif->flush_display (f); + } } /* Make minibuffer contents into a string. */ |