aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDan Nicolaescu2007-10-26 18:09:36 +0000
committerDan Nicolaescu2007-10-26 18:09:36 +0000
commite3d7bd8321719f25e22ba7857bfd8cbbd1982eb4 (patch)
tree1c5165b933e5df0f48b3c6d0645867fd50eff036 /src
parent7ce8671d69767c4e31f76c2e0f1aad5702f8d374 (diff)
downloademacs-e3d7bd8321719f25e22ba7857bfd8cbbd1982eb4.tar.gz
emacs-e3d7bd8321719f25e22ba7857bfd8cbbd1982eb4.zip
(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.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog6
-rw-r--r--src/frame.h92
2 files changed, 52 insertions, 46 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index d379c882245..012573bc760 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
12007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
2
3 * frame.h (struct frame): Move all bit fields after the first bit
4 field to take advantage of the available space. Group all the
5 chars together to reduce wasted space due to padding.
6
12007-10-26 Juanma Barranquero <lekktu@gmail.com> 72007-10-26 Juanma Barranquero <lekktu@gmail.com>
2 8
3 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings. 9 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
diff --git a/src/frame.h b/src/frame.h
index 539b0b7edd0..a9bddbe34b8 100644
--- a/src/frame.h
+++ b/src/frame.h
@@ -202,6 +202,30 @@ struct frame
202 be used for output. */ 202 be used for output. */
203 unsigned glyphs_initialized_p : 1; 203 unsigned glyphs_initialized_p : 1;
204 204
205 /* Set to non-zero in change_frame_size when size of frame changed
206 Clear the frame in clear_garbaged_frames if set. */
207 unsigned resized_p : 1;
208
209 /* Set to non-zero in when we want for force a flush_display in
210 update_frame, usually after resizing the frame. */
211 unsigned force_flush_display_p : 1;
212
213 /* Set to non-zero if the default face for the frame has been
214 realized. Reset to zero whenever the default face changes.
215 Used to see the difference between a font change and face change. */
216 unsigned default_face_done_p : 1;
217
218 /* Set to non-zero if this frame has already been hscrolled during
219 current redisplay. */
220 unsigned already_hscrolled_p : 1;
221
222 /* Set to non-zero when current redisplay has updated frame. */
223 unsigned updated_p : 1;
224
225 /* Set to non-zero to minimize tool-bar height even when
226 auto-resize-tool-bar is set to grow-only. */
227 unsigned minimize_tool_bar_window_p : 1;
228
205#if defined (USE_GTK) || defined (MAC_OS) 229#if defined (USE_GTK) || defined (MAC_OS)
206 /* Nonzero means using a tool bar that comes from the toolkit. */ 230 /* Nonzero means using a tool bar that comes from the toolkit. */
207 int external_tool_bar; 231 int external_tool_bar;
@@ -368,24 +392,6 @@ struct frame
368 support scroll bars. */ 392 support scroll bars. */
369 char can_have_scroll_bars; 393 char can_have_scroll_bars;
370 394
371 /* If can_have_scroll_bars is non-zero, this is non-zero if we should
372 actually display them on this frame. */
373 enum vertical_scroll_bar_type vertical_scroll_bar_type;
374
375 /* What kind of text cursor should we draw in the future?
376 This should always be filled_box_cursor or bar_cursor. */
377 enum text_cursor_kinds desired_cursor;
378
379 /* Width of bar cursor (if we are using that). */
380 int cursor_width;
381
382 /* What kind of text cursor should we draw when the cursor blinks off?
383 This can be filled_box_cursor or bar_cursor or no_cursor. */
384 enum text_cursor_kinds blink_off_cursor;
385
386 /* Width of bar cursor (if we are using that) for blink-off state. */
387 int blink_off_cursor_width;
388
389 /* Non-0 means raise this frame to the top of the heap when selected. */ 395 /* Non-0 means raise this frame to the top of the heap when selected. */
390 char auto_raise; 396 char auto_raise;
391 397
@@ -404,6 +410,28 @@ struct frame
404 /* Nonzero if size of some window on this frame has changed. */ 410 /* Nonzero if size of some window on this frame has changed. */
405 char window_sizes_changed; 411 char window_sizes_changed;
406 412
413 /* Nonzero if the mouse has moved on this display device
414 since the last time we checked. */
415 char mouse_moved;
416
417 /* If can_have_scroll_bars is non-zero, this is non-zero if we should
418 actually display them on this frame. */
419 enum vertical_scroll_bar_type vertical_scroll_bar_type;
420
421 /* What kind of text cursor should we draw in the future?
422 This should always be filled_box_cursor or bar_cursor. */
423 enum text_cursor_kinds desired_cursor;
424
425 /* Width of bar cursor (if we are using that). */
426 int cursor_width;
427
428 /* What kind of text cursor should we draw when the cursor blinks off?
429 This can be filled_box_cursor or bar_cursor or no_cursor. */
430 enum text_cursor_kinds blink_off_cursor;
431
432 /* Width of bar cursor (if we are using that) for blink-off state. */
433 int blink_off_cursor_width;
434
407 /* Storage for messages to this frame. */ 435 /* Storage for messages to this frame. */
408 char *message_buf; 436 char *message_buf;
409 437
@@ -426,10 +454,6 @@ struct frame
426 /* The baud rate that was used to calculate costs for this frame. */ 454 /* The baud rate that was used to calculate costs for this frame. */
427 int cost_calculation_baud_rate; 455 int cost_calculation_baud_rate;
428 456
429 /* Nonzero if the mouse has moved on this display device
430 since the last time we checked. */
431 char mouse_moved;
432
433 /* Exponent for gamma correction of colors. 1/(VIEWING_GAMMA * 457 /* Exponent for gamma correction of colors. 1/(VIEWING_GAMMA *
434 SCREEN_GAMMA) where viewing_gamma is 0.4545 and SCREEN_GAMMA is a 458 SCREEN_GAMMA) where viewing_gamma is 0.4545 and SCREEN_GAMMA is a
435 frame parameter. 0 means don't do gamma correction. */ 459 frame parameter. 0 means don't do gamma correction. */
@@ -438,33 +462,9 @@ struct frame
438 /* Additional space to put between text lines on this frame. */ 462 /* Additional space to put between text lines on this frame. */
439 int extra_line_spacing; 463 int extra_line_spacing;
440 464
441 /* Set to non-zero in change_frame_size when size of frame changed
442 Clear the frame in clear_garbaged_frames if set. */
443 unsigned resized_p : 1;
444
445 /* Set to non-zero in when we want for force a flush_display in
446 update_frame, usually after resizing the frame. */
447 unsigned force_flush_display_p : 1;
448
449 /* All display backends seem to need these two pixel values. */ 465 /* All display backends seem to need these two pixel values. */
450 unsigned long background_pixel; 466 unsigned long background_pixel;
451 unsigned long foreground_pixel; 467 unsigned long foreground_pixel;
452
453 /* Set to non-zero if the default face for the frame has been
454 realized. Reset to zero whenever the default face changes.
455 Used to see the difference between a font change and face change. */
456 unsigned default_face_done_p : 1;
457
458 /* Set to non-zero if this frame has already been hscrolled during
459 current redisplay. */
460 unsigned already_hscrolled_p : 1;
461
462 /* Set to non-zero when current redisplay has updated frame. */
463 unsigned updated_p : 1;
464
465 /* Set to non-zero to minimize tool-bar height even when
466 auto-resize-tool-bar is set to grow-only. */
467 unsigned minimize_tool_bar_window_p : 1;
468}; 468};
469 469
470#ifdef MULTI_KBOARD 470#ifdef MULTI_KBOARD