diff options
| author | Dan Nicolaescu | 2007-10-26 18:09:36 +0000 |
|---|---|---|
| committer | Dan Nicolaescu | 2007-10-26 18:09:36 +0000 |
| commit | e3d7bd8321719f25e22ba7857bfd8cbbd1982eb4 (patch) | |
| tree | 1c5165b933e5df0f48b3c6d0645867fd50eff036 /src | |
| parent | 7ce8671d69767c4e31f76c2e0f1aad5702f8d374 (diff) | |
| download | emacs-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/ChangeLog | 6 | ||||
| -rw-r--r-- | src/frame.h | 92 |
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 @@ | |||
| 1 | 2007-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 | |||
| 1 | 2007-10-26 Juanma Barranquero <lekktu@gmail.com> | 7 | 2007-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 |