Revert extra focus redirection in do_switch_frame (Bug#24803)
* src/frame.c (do_switch_frame): Do not also redirect frame focus when FRAME has its minibuffer window on the selected frame which was intended to fix Bug#24500. It may cause Bug#24803 and lead to a nasty state where no active cursor is shown on any frame, see https://lists.gnu.org/archive/html/emacs-devel/2020-11/msg01137.html.
This commit is contained in:
parent
fc4379f1ae
commit
6442cdc0e4
1 changed files with 7 additions and 3 deletions
10
src/frame.c
10
src/frame.c
|
@ -1427,11 +1427,15 @@ do_switch_frame (Lisp_Object frame, int track, int for_deletion, Lisp_Object nor
|
||||||
if (FRAMEP (gfocus))
|
if (FRAMEP (gfocus))
|
||||||
{
|
{
|
||||||
focus = FRAME_FOCUS_FRAME (XFRAME (gfocus));
|
focus = FRAME_FOCUS_FRAME (XFRAME (gfocus));
|
||||||
if ((FRAMEP (focus) && XFRAME (focus) == SELECTED_FRAME ())
|
if (FRAMEP (focus) && XFRAME (focus) == SELECTED_FRAME ())
|
||||||
/* Redirect frame focus also when FRAME has its minibuffer
|
/* Redirect frame focus also when FRAME has its minibuffer
|
||||||
window on the selected frame (see Bug#24500). */
|
window on the selected frame (see Bug#24500).
|
||||||
|
|
||||||
|
Don't do that: It causes redirection problem with a
|
||||||
|
separate minibuffer frame (Bug#24803) and problems
|
||||||
|
when updating the cursor on such frames.
|
||||||
|| (NILP (focus)
|
|| (NILP (focus)
|
||||||
&& EQ (FRAME_MINIBUF_WINDOW (f), sf->selected_window)))
|
&& EQ (FRAME_MINIBUF_WINDOW (f), sf->selected_window))) */
|
||||||
Fredirect_frame_focus (gfocus, frame);
|
Fredirect_frame_focus (gfocus, frame);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue