From: Martin Rudalics Date: Thu, 9 Oct 2008 08:26:33 +0000 (+0000) Subject: (Fraise_frame): On text-only terminals select frame in X-Git-Tag: emacs-pretest-23.0.90~2591 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=1bf7273525fbc3657d861630efe006dd8f66783a;p=emacs.git (Fraise_frame): On text-only terminals select frame in order to make it visible. (Bug#1061) --- diff --git a/src/ChangeLog b/src/ChangeLog index 23aa0242bc6..4b0daf5b862 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2008-10-09 Martin Rudalics + + * frame.c (Fraise_frame): On text-only terminals select frame in + order to make it visible. (Bug#1061) + 2008-10-08 Chong Yidong * fontset.c (fontset_find_font): Check frame validity. diff --git a/src/frame.c b/src/frame.c index 35b6417a71c..92edcc06206 100644 --- a/src/frame.c +++ b/src/frame.c @@ -2004,7 +2004,7 @@ DEFUN ("raise-frame", Fraise_frame, Sraise_frame, 0, 1, "", 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 @@ doesn't support multiple overlapping frames, this function does nothing. */) 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 @@ x_set_font_backend (f, new_value, old_value) && !CONSP (new_value)) { char *p0, *p1; - + CHECK_STRING (new_value); p0 = p1 = SDATA (new_value); new_value = Qnil;