Mercurial > emacs
changeset 85682:919974c09488
(struct frame): Move all bit fields after the first bit
field to take advantage of the available space. Group all the
chars together to reduce wasted space due to padding.
author | Dan Nicolaescu <dann@ics.uci.edu> |
---|---|
date | Fri, 26 Oct 2007 18:09:36 +0000 |
parents | 68a4daa7867a |
children | 2b92bd846058 |
files | src/ChangeLog src/frame.h |
diffstat | 2 files changed, 52 insertions(+), 46 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog Fri Oct 26 15:46:57 2007 +0000 +++ b/src/ChangeLog Fri Oct 26 18:09:36 2007 +0000 @@ -1,3 +1,9 @@ +2007-10-26 Dan Nicolaescu <dann@ics.uci.edu> + + * frame.h (struct frame): Move all bit fields after the first bit + field to take advantage of the available space. Group all the + chars together to reduce wasted space due to padding. + 2007-10-26 Juanma Barranquero <lekktu@gmail.com> * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
--- a/src/frame.h Fri Oct 26 15:46:57 2007 +0000 +++ b/src/frame.h Fri Oct 26 18:09:36 2007 +0000 @@ -202,6 +202,30 @@ be used for output. */ unsigned glyphs_initialized_p : 1; + /* Set to non-zero in change_frame_size when size of frame changed + Clear the frame in clear_garbaged_frames if set. */ + unsigned resized_p : 1; + + /* Set to non-zero in when we want for force a flush_display in + update_frame, usually after resizing the frame. */ + unsigned force_flush_display_p : 1; + + /* Set to non-zero if the default face for the frame has been + realized. Reset to zero whenever the default face changes. + Used to see the difference between a font change and face change. */ + unsigned default_face_done_p : 1; + + /* Set to non-zero if this frame has already been hscrolled during + current redisplay. */ + unsigned already_hscrolled_p : 1; + + /* Set to non-zero when current redisplay has updated frame. */ + unsigned updated_p : 1; + + /* Set to non-zero to minimize tool-bar height even when + auto-resize-tool-bar is set to grow-only. */ + unsigned minimize_tool_bar_window_p : 1; + #if defined (USE_GTK) || defined (MAC_OS) /* Nonzero means using a tool bar that comes from the toolkit. */ int external_tool_bar; @@ -368,6 +392,28 @@ support scroll bars. */ char can_have_scroll_bars; + /* Non-0 means raise this frame to the top of the heap when selected. */ + char auto_raise; + + /* Non-0 means lower this frame to the bottom of the stack when left. */ + char auto_lower; + + /* True if frame's root window can't be split. */ + char no_split; + + /* If this is set, then Emacs won't change the frame name to indicate + the current buffer, etcetera. If the user explicitly sets the frame + name, this gets set. If the user sets the name to Qnil, this is + cleared. */ + char explicit_name; + + /* Nonzero if size of some window on this frame has changed. */ + char window_sizes_changed; + + /* Nonzero if the mouse has moved on this display device + since the last time we checked. */ + char mouse_moved; + /* If can_have_scroll_bars is non-zero, this is non-zero if we should actually display them on this frame. */ enum vertical_scroll_bar_type vertical_scroll_bar_type; @@ -386,24 +432,6 @@ /* Width of bar cursor (if we are using that) for blink-off state. */ int blink_off_cursor_width; - /* Non-0 means raise this frame to the top of the heap when selected. */ - char auto_raise; - - /* Non-0 means lower this frame to the bottom of the stack when left. */ - char auto_lower; - - /* True if frame's root window can't be split. */ - char no_split; - - /* If this is set, then Emacs won't change the frame name to indicate - the current buffer, etcetera. If the user explicitly sets the frame - name, this gets set. If the user sets the name to Qnil, this is - cleared. */ - char explicit_name; - - /* Nonzero if size of some window on this frame has changed. */ - char window_sizes_changed; - /* Storage for messages to this frame. */ char *message_buf; @@ -426,10 +454,6 @@ /* The baud rate that was used to calculate costs for this frame. */ int cost_calculation_baud_rate; - /* Nonzero if the mouse has moved on this display device - since the last time we checked. */ - char mouse_moved; - /* Exponent for gamma correction of colors. 1/(VIEWING_GAMMA * SCREEN_GAMMA) where viewing_gamma is 0.4545 and SCREEN_GAMMA is a frame parameter. 0 means don't do gamma correction. */ @@ -438,33 +462,9 @@ /* Additional space to put between text lines on this frame. */ int extra_line_spacing; - /* Set to non-zero in change_frame_size when size of frame changed - Clear the frame in clear_garbaged_frames if set. */ - unsigned resized_p : 1; - - /* Set to non-zero in when we want for force a flush_display in - update_frame, usually after resizing the frame. */ - unsigned force_flush_display_p : 1; - /* All display backends seem to need these two pixel values. */ unsigned long background_pixel; unsigned long foreground_pixel; - - /* Set to non-zero if the default face for the frame has been - realized. Reset to zero whenever the default face changes. - Used to see the difference between a font change and face change. */ - unsigned default_face_done_p : 1; - - /* Set to non-zero if this frame has already been hscrolled during - current redisplay. */ - unsigned already_hscrolled_p : 1; - - /* Set to non-zero when current redisplay has updated frame. */ - unsigned updated_p : 1; - - /* Set to non-zero to minimize tool-bar height even when - auto-resize-tool-bar is set to grow-only. */ - unsigned minimize_tool_bar_window_p : 1; }; #ifdef MULTI_KBOARD