]> git.eshelyaron.com Git - emacs.git/commitdiff
(Fmessage_box): If the frame is not under a window
authorEli Zaretskii <eliz@gnu.org>
Fri, 15 Jun 2001 11:31:11 +0000 (11:31 +0000)
committerEli Zaretskii <eliz@gnu.org>
Fri, 15 Jun 2001 11:31:11 +0000 (11:31 +0000)
system, output the message in the echo area.

src/ChangeLog
src/editfns.c

index 7ebea9bff456d93c4f8c88e6e2109c5f65909588..7575dca29d33f87cd03ac03027783f7a4f3820f7 100644 (file)
@@ -1,3 +1,8 @@
+2001-06-15  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * editfns.c (Fmessage_box): If the frame is not under a window
+       system, output the message in the echo area.
+
 2001-06-14  Richard M. Stallman  <rms@gnu.org>
 
        * xdisp.c (try_window_id): When EOB is visible, don't treat
index 37f0162458d5d7ea5dc514b1fd3e945cad63719f..7efa75383ce9facad07db15d4bb740fdbd444cd9 100644 (file)
@@ -38,6 +38,7 @@ Boston, MA 02111-1307, USA.  */
 #include "buffer.h"
 #include "charset.h"
 #include "coding.h"
+#include "frame.h"
 #include "window.h"
 
 #include "systime.h"
@@ -2915,16 +2916,12 @@ use `save-excursion' outermost:\n\
   return unbind_to (count, val);
 }
 \f
-#ifndef HAVE_MENUS
-
-/* Buffer for the most recent text displayed by Fmessage.  */
+/* Buffer for the most recent text displayed by Fmessage_box.  */
 static char *message_text;
 
 /* Allocated length of that buffer.  */
 static int message_length;
 
-#endif /* not HAVE_MENUS */
-
 DEFUN ("message", Fmessage, Smessage, 1, MANY, 0,
   "Print a one-line message at the bottom of the screen.\n\
 The first argument is a format control string, and the rest are data\n\
@@ -2972,6 +2969,10 @@ minibuffer contents show.")
       register Lisp_Object val;
       val = Fformat (nargs, args);
 #ifdef HAVE_MENUS
+      /* The MS-DOS frames support popup menus even though they are
+        not FRAME_WINDOW_P.  */
+      if (FRAME_WINDOW_P (XFRAME (selected_frame))
+         || FRAME_MSDOS_P (XFRAME (selected_frame)))
       {
        Lisp_Object pane, menu, obj;
        struct gcpro gcpro1;
@@ -2982,7 +2983,7 @@ minibuffer contents show.")
        UNGCPRO;
        return val;
       }
-#else /* not HAVE_MENUS */
+#endif /* HAVE_MENUS */
       /* Copy the data so that it won't move when we GC.  */
       if (! message_text)
        {
@@ -2998,7 +2999,6 @@ minibuffer contents show.")
       message2 (message_text, STRING_BYTES (XSTRING (val)),
                STRING_MULTIBYTE (val));
       return val;
-#endif /* not HAVE_MENUS */
     }
 }
 #ifdef HAVE_MENUS