aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAndrew Innes2000-12-21 14:58:55 +0000
committerAndrew Innes2000-12-21 14:58:55 +0000
commit99012074ba9561666dd32d3f6645b8f29c7a444b (patch)
tree8a6fe8f2eeb0d5306a3a2d40d853ada115084733 /src
parent90f4a9f8e2a4424d1ff19208aa088cfdf6fa4df9 (diff)
downloademacs-99012074ba9561666dd32d3f6645b8f29c7a444b.tar.gz
emacs-99012074ba9561666dd32d3f6645b8f29c7a444b.zip
(x_update_begin): Regenerate the palette here, rather
than for each window.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog9
-rw-r--r--src/w32term.c23
2 files changed, 19 insertions, 13 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 21915f30049..1001433b82d 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,12 @@
12000-12-21 Andrew Innes <andrewi@gnu.org>
2
3 * w32term.c (x_update_begin): Regenerate the palette here, rather
4 than for each window.
5
6 * w32xfns.c (select_palette): Avoid calling SelectPalette if
7 palette is NULL, since this corrupts memory! Also get
8 display_info reference from frame.
9
12000-12-21 Jason Rumney <jasonr@gnu.org> 102000-12-21 Jason Rumney <jasonr@gnu.org>
2 11
3 * w32bdf.c (w32_init_bdf_font): Fix test for valid bmp heap. 12 * w32bdf.c (w32_init_bdf_font): Fix test for valid bmp heap.
diff --git a/src/w32term.c b/src/w32term.c
index cf25b7e1080..c32b71ea1c2 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -544,16 +544,21 @@ w32_clear_window (f)
544/* Start an update of frame F. This function is installed as a hook 544/* Start an update of frame F. This function is installed as a hook
545 for update_begin, i.e. it is called when update_begin is called. 545 for update_begin, i.e. it is called when update_begin is called.
546 This function is called prior to calls to x_update_window_begin for 546 This function is called prior to calls to x_update_window_begin for
547 each window being updated. Currently, there is nothing to do here 547 each window being updated. */
548 because all interesting stuff is done on a window basis. */
549 548
550static void 549static void
551x_update_begin (f) 550x_update_begin (f)
552 struct frame *f; 551 struct frame *f;
553{ 552{
554 /* Nothing to do. We have to do something though, otherwise the 553 struct w32_display_info *display_info = FRAME_W32_DISPLAY_INFO (f);
555 function gets optimized away and the hook is no longer valid. */ 554
556 struct frame *cf = f; 555 /* Regenerate display palette before drawing if list of requested
556 colors has changed. */
557 if (display_info->regen_palette)
558 {
559 w32_regenerate_palette (f);
560 display_info->regen_palette = FALSE;
561 }
557} 562}
558 563
559 564
@@ -573,14 +578,6 @@ x_update_window_begin (w)
573 578
574 BLOCK_INPUT; 579 BLOCK_INPUT;
575 580
576 /* Regenerate display palette before drawing if list of requested
577 colors has changed. */
578 if (display_info->regen_palette)
579 {
580 w32_regenerate_palette (f);
581 display_info->regen_palette = FALSE;
582 }
583
584 if (f == display_info->mouse_face_mouse_frame) 581 if (f == display_info->mouse_face_mouse_frame)
585 { 582 {
586 /* Don't do highlighting for mouse motion during the update. */ 583 /* Don't do highlighting for mouse motion during the update. */