emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r112107: * frame.h (struct frame): Pu


From: Dmitry Antipov
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r112107: * frame.h (struct frame): Put menu_bar_window under #ifdef
Date: Fri, 22 Mar 2013 16:41:34 +0400
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 112107
committer: Dmitry Antipov <address@hidden>
branch nick: trunk
timestamp: Fri 2013-03-22 16:41:34 +0400
message:
  * frame.h (struct frame): Put menu_bar_window under #ifdef
  because this member is not needed when X toolkit is in use.
  (fset_menu_bar_window):
  * dispnew.c (clear_current_matrices, clear_desired_matrices)
  (free_glyphs, update_frame):
  * xdisp.c (expose_frame): Likewise.
  (display_menu_bar): Likewise.  Remove redundant eassert.
  * window.h (WINDOW_MENU_BAR_P): Always define to 0 if X
  toolkit is in use.
modified:
  src/ChangeLog
  src/dispnew.c
  src/frame.h
  src/window.h
  src/xdisp.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2013-03-21 20:56:22 +0000
+++ b/src/ChangeLog     2013-03-22 12:41:34 +0000
@@ -1,3 +1,15 @@
+2013-03-22  Dmitry Antipov  <address@hidden>
+
+       * frame.h (struct frame): Put menu_bar_window under #ifdef
+       because this member is not needed when X toolkit is in use.
+       (fset_menu_bar_window):
+       * dispnew.c (clear_current_matrices, clear_desired_matrices)
+       (free_glyphs, update_frame):
+       * xdisp.c (expose_frame): Likewise.
+       (display_menu_bar): Likewise.  Remove redundant eassert.
+       * window.h (WINDOW_MENU_BAR_P): Always define to 0 if X
+       toolkit is in use.
+
 2013-03-21  Paul Eggert  <address@hidden>
 
        Use functions and constants to manipulate Lisp_Save_Value objects.

=== modified file 'src/dispnew.c'
--- a/src/dispnew.c     2013-03-20 11:29:37 +0000
+++ b/src/dispnew.c     2013-03-22 12:41:34 +0000
@@ -794,11 +794,13 @@
   if (f->current_matrix)
     clear_glyph_matrix (f->current_matrix);
 
+#if defined (HAVE_X_WINDOWS) && ! defined (USE_X_TOOLKIT) && ! defined 
(USE_GTK)
   /* Clear the matrix of the menu bar window, if such a window exists.
      The menu bar window is currently used to display menus on X when
      no toolkit support is compiled in.  */
   if (WINDOWP (f->menu_bar_window))
     clear_glyph_matrix (XWINDOW (f->menu_bar_window)->current_matrix);
+#endif
 
   /* Clear the matrix of the tool-bar window, if any.  */
   if (WINDOWP (f->tool_bar_window))
@@ -818,8 +820,10 @@
   if (f->desired_matrix)
     clear_glyph_matrix (f->desired_matrix);
 
+#if defined (HAVE_X_WINDOWS) && ! defined (USE_X_TOOLKIT) && ! defined 
(USE_GTK)
   if (WINDOWP (f->menu_bar_window))
     clear_glyph_matrix (XWINDOW (f->menu_bar_window)->desired_matrix);
+#endif
 
   if (WINDOWP (f->tool_bar_window))
     clear_glyph_matrix (XWINDOW (f->tool_bar_window)->desired_matrix);
@@ -2184,6 +2188,7 @@
       if (!NILP (f->root_window))
         free_window_matrices (XWINDOW (f->root_window));
 
+#if defined (HAVE_X_WINDOWS) && ! defined (USE_X_TOOLKIT) && ! defined 
(USE_GTK)
       /* Free the dummy window for menu bars without X toolkit and its
         glyph matrices.  */
       if (!NILP (f->menu_bar_window))
@@ -2194,6 +2199,7 @@
          w->desired_matrix = w->current_matrix = NULL;
          fset_menu_bar_window (f, Qnil);
        }
+#endif
 
       /* Free the tool bar window and its glyph matrices.  */
       if (!NILP (f->tool_bar_window))
@@ -3092,10 +3098,12 @@
         when pending input is detected.  */
       update_begin (f);
 
+#if defined (HAVE_X_WINDOWS) && ! defined (USE_X_TOOLKIT) && ! defined 
(USE_GTK)
       /* Update the menu bar on X frames that don't have toolkit
         support.  */
       if (WINDOWP (f->menu_bar_window))
        update_window (XWINDOW (f->menu_bar_window), 1);
+#endif
 
       /* Update the tool-bar window, if present.  */
       if (WINDOWP (f->tool_bar_window))

=== modified file 'src/frame.h'
--- a/src/frame.h       2013-03-20 09:56:19 +0000
+++ b/src/frame.h       2013-03-22 12:41:34 +0000
@@ -170,9 +170,11 @@
      most recently buried buffer is first.  For last-buffer.  */
   Lisp_Object buried_buffer_list;
 
+#if defined (HAVE_X_WINDOWS) && ! defined (USE_X_TOOLKIT) && ! defined 
(USE_GTK)
   /* A dummy window used to display menu bars under X when no X
      toolkit support is available.  */
   Lisp_Object menu_bar_window;
+#endif
 
   /* A window used to display the tool-bar of a frame.  */
   Lisp_Object tool_bar_window;
@@ -515,11 +517,13 @@
 {
   f->menu_bar_vector = val;
 }
+#if defined (HAVE_X_WINDOWS) && ! defined (USE_X_TOOLKIT) && ! defined 
(USE_GTK)
 FRAME_INLINE void
 fset_menu_bar_window (struct frame *f, Lisp_Object val)
 {
   f->menu_bar_window = val;
 }
+#endif
 FRAME_INLINE void
 fset_name (struct frame *f, Lisp_Object val)
 {

=== modified file 'src/window.h'
--- a/src/window.h      2013-03-20 11:29:37 +0000
+++ b/src/window.h      2013-03-22 12:41:34 +0000
@@ -512,9 +512,14 @@
 
 /* 1 if W is a menu bar window.  */
 
+#if defined (HAVE_X_WINDOWS) && ! defined (USE_X_TOOLKIT) && ! defined 
(USE_GTK)
 #define WINDOW_MENU_BAR_P(W) \
   (WINDOWP (WINDOW_XFRAME (W)->menu_bar_window) \
    && (W) == XWINDOW (WINDOW_XFRAME (W)->menu_bar_window))
+#else
+/* No menu bar windows if X toolkit is in use.  */
+#define WINDOW_MENU_BAR_P(W) (0)
+#endif
 
 /* 1 if W is a tool bar window.  */
 

=== modified file 'src/xdisp.c'
--- a/src/xdisp.c       2013-03-20 11:29:37 +0000
+++ b/src/xdisp.c       2013-03-22 12:41:34 +0000
@@ -19988,18 +19988,17 @@
     return;
 #endif /* HAVE_NS */
 
-#ifdef USE_X_TOOLKIT
+#if defined (USE_X_TOOLKIT) || defined (USE_GTK)
   eassert (!FRAME_WINDOW_P (f));
   init_iterator (&it, w, -1, -1, f->desired_matrix->rows, MENU_FACE_ID);
   it.first_visible_x = 0;
   it.last_visible_x = FRAME_TOTAL_COLS (f) * FRAME_COLUMN_WIDTH (f);
-#else /* not USE_X_TOOLKIT */
+#elif defined (HAVE_X_WINDOWS) /* X without toolkit.  */
   if (FRAME_WINDOW_P (f))
     {
       /* Menu bar lines are displayed in the desired matrix of the
         dummy window menu_bar_window.  */
       struct window *menu_w;
-      eassert (WINDOWP (f->menu_bar_window));
       menu_w = XWINDOW (f->menu_bar_window);
       init_iterator (&it, menu_w, -1, -1, menu_w->desired_matrix->rows,
                     MENU_FACE_ID);
@@ -20007,6 +20006,7 @@
       it.last_visible_x = FRAME_TOTAL_COLS (f) * FRAME_COLUMN_WIDTH (f);
     }
   else
+#endif /* not USE_X_TOOLKIT and not USE_GTK */
     {
       /* This is a TTY frame, i.e. character hpos/vpos are used as
         pixel x/y.  */
@@ -20015,7 +20015,6 @@
       it.first_visible_x = 0;
       it.last_visible_x = FRAME_COLS (f);
     }
-#endif /* not USE_X_TOOLKIT */
 
   /* FIXME: This should be controlled by a user option.  See the
      comments in redisplay_tool_bar and display_mode_line about
@@ -28480,11 +28479,11 @@
 
 #ifdef HAVE_X_WINDOWS
 #ifndef MSDOS
-#ifndef USE_X_TOOLKIT
+#if ! defined (USE_X_TOOLKIT) && ! defined (USE_GTK)
   if (WINDOWP (f->menu_bar_window))
     mouse_face_overwritten_p
       |= expose_window (XWINDOW (f->menu_bar_window), &r);
-#endif /* not USE_X_TOOLKIT */
+#endif /* not USE_X_TOOLKIT and not USE_GTK */
 #endif
 #endif
 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]