(Fraise_frame): On text-only terminals select frame in
authorMartin Rudalics <rudalics@gmx.at>
Thu, 9 Oct 2008 08:26:33 +0000 (08:26 +0000)
committerMartin Rudalics <rudalics@gmx.at>
Thu, 9 Oct 2008 08:26:33 +0000 (08:26 +0000)
order to make it visible.  (Bug#1061)

src/ChangeLog
src/frame.c

index 23aa024..4b0daf5 100644 (file)
@@ -1,3 +1,8 @@
+2008-10-09  Martin Rudalics  <rudalics@gmx.at>
+
+       * frame.c (Fraise_frame): On text-only terminals select frame in
+       order to make it visible.  (Bug#1061)
+
 2008-10-08  Chong Yidong  <cyd@stupidchicken.com>
 
        * fontset.c (fontset_find_font): Check frame validity.
index 35b6417..92edcc0 100644 (file)
@@ -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;