Mercurial > emacs
changeset 11906:3ca56969ba07
(Fdelete_frame): When updating Vdefault_minibuffer_frame,
insist on a frame on the proper keyboard.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Wed, 24 May 1995 21:34:23 +0000 |
parents | 3f5326542cf6 |
children | 0f03ad1cac1e |
files | src/frame.c |
diffstat | 1 files changed, 10 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/src/frame.c Wed May 24 20:50:54 1995 +0000 +++ b/src/frame.c Wed May 24 21:34:23 1995 +0000 @@ -1014,9 +1014,9 @@ } } - /* If we've deleted Vdefault_minibuffer_frame, try to find another - one. Prefer minibuffer-only frames, but also notice frames - with other windows. */ + /* If we've deleted this keyboard's default_minibuffer_frame, try to + find another one. Prefer minibuffer-only frames, but also notice + frames with other windows. */ if (EQ (frame, FRAME_KBOARD (f)->Vdefault_minibuffer_frame)) { Lisp_Object frames; @@ -1030,16 +1030,20 @@ frames = XCONS (frames)->cdr) { Lisp_Object this; + struct frame *f1; this = XCONS (frames)->car; if (!FRAMEP (this)) abort (); - f = XFRAME (this); + f1 = XFRAME (this); - if (FRAME_HAS_MINIBUF_P (f)) + /* Consider only frames on the same kboard + and only those with minibuffers. */ + if (FRAME_KBOARD (f) == FRAME_KBOARD (f1) + && FRAME_HAS_MINIBUF_P (f1)) { frame_with_minibuf = this; - if (FRAME_MINIBUF_ONLY_P (f)) + if (FRAME_MINIBUF_ONLY_P (f1)) break; } }