Mercurial > emacs
changeset 98579:6a4d13121cb1
(Fraise_frame): On text-only terminals select frame in
order to make it visible. (Bug#1061)
author | Martin Rudalics <rudalics@gmx.at> |
---|---|
date | Thu, 09 Oct 2008 08:24:48 +0000 |
parents | a3c29cf2d09a |
children | 93f43f5f3723 |
files | src/frame.c |
diffstat | 1 files changed, 8 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/frame.c Thu Oct 09 08:12:41 2008 +0000 +++ b/src/frame.c Thu Oct 09 08:24:48 2008 +0000 @@ -2004,7 +2004,7 @@ If FRAME is invisible or iconified, make it visible. If you don't specify a frame, the selected frame is used. If Emacs is displaying on an ordinary terminal or some other device which -doesn't support multiple overlapping frames, this function does nothing. */) +doesn't support multiple overlapping frames, this function selects FRAME. */) (frame) Lisp_Object frame; { @@ -2016,8 +2016,12 @@ f = XFRAME (frame); - /* Do like the documentation says. */ - Fmake_frame_visible (frame); + if (FRAME_TERMCAP_P (f)) + /* On a text-only terminal select FRAME. */ + Fselect_frame (frame); + else + /* Do like the documentation says. */ + Fmake_frame_visible (frame); if (FRAME_TERMINAL (f)->frame_raise_lower_hook) (*FRAME_TERMINAL (f)->frame_raise_lower_hook) (f, 1); @@ -3413,7 +3417,7 @@ && !CONSP (new_value)) { char *p0, *p1; - + CHECK_STRING (new_value); p0 = p1 = SDATA (new_value); new_value = Qnil;