diff options
author | Alan Mackenzie <acm@muc.de> | 2023-06-21 14:23:14 +0000 |
---|---|---|
committer | Alan Mackenzie <acm@muc.de> | 2023-06-21 14:23:14 +0000 |
commit | 4ca371e9cc7178572cc25cbe47371c0075405ff7 (patch) | |
tree | fcb790b0431b6a47739fc2644298676c28076306 /src/lisp.h | |
parent | a0ccf1859cc636998403c52cb25d5aaf43744d47 (diff) | |
download | emacs-4ca371e9cc7178572cc25cbe47371c0075405ff7.tar.gz emacs-4ca371e9cc7178572cc25cbe47371c0075405ff7.tar.bz2 emacs-4ca371e9cc7178572cc25cbe47371c0075405ff7.zip |
Fix bug#64152 (Minibuffer sometimes goes "modal")
In particular, when a frame has no minibuffer and is using that
of a different "normal" frame, C-x 5 o, etc., and GUI
operations fail.
Fix by partially reverting the commit from 2022-07-07 15:38:09
+0000 "Remove obscure, obsolete code from do_switch_frame". As
a consequent change, also revert the commit from 2022-07-08
20:19:03 +0000 "Remove now unused parameter TRACK from
do_switch_frame".
* src/frame.c (do_switch_frame): Restore the TRACK parameter.
Restore the code which redirects the frame focus when a new
frame gets selected.
* src/frame.c (Fselect_frame, Fhandle_switch_frame)
(delete_frame)
* src/keyboard.c (quit_throw_to_read_char)
* src/lisp.h (do_switch_frame prototype)
* src/minibuf.c (read_minibuf_unwind)
* src/window.c (Fset_window_configuration): Restore the TRACK
argument to do_switch_frame.
* src/xterm.c (x_try_restore_frame): Add a zero TRACK argument
to do_switch_frame.
Diffstat (limited to 'src/lisp.h')
-rw-r--r-- | src/lisp.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lisp.h b/src/lisp.h index 9c02d975a74..bf91a1559bf 100644 --- a/src/lisp.h +++ b/src/lisp.h @@ -4878,7 +4878,7 @@ extern void syms_of_indent (void); /* Defined in frame.c. */ extern void store_frame_param (struct frame *, Lisp_Object, Lisp_Object); extern void store_in_alist (Lisp_Object *, Lisp_Object, Lisp_Object); -extern Lisp_Object do_switch_frame (Lisp_Object, int, Lisp_Object); +extern Lisp_Object do_switch_frame (Lisp_Object, int, int, Lisp_Object); extern Lisp_Object get_frame_param (struct frame *, Lisp_Object); extern void frames_discard_buffer (Lisp_Object); extern void init_frame_once (void); |