diff src/w32term.c @ 34784:d140f5fb3307

(x_update_begin): Regenerate the palette here, rather than for each window.
author Andrew Innes <andrewi@gnu.org>
date Thu, 21 Dec 2000 14:58:31 +0000
parents 94c3431a7fe2
children ace8dd8cf098
line wrap: on
line diff
--- a/src/w32term.c	Thu Dec 21 14:58:09 2000 +0000
+++ b/src/w32term.c	Thu Dec 21 14:58:31 2000 +0000
@@ -544,16 +544,21 @@
 /* Start an update of frame F.  This function is installed as a hook
    for update_begin, i.e. it is called when update_begin is called.
    This function is called prior to calls to x_update_window_begin for
-   each window being updated.  Currently, there is nothing to do here
-   because all interesting stuff is done on a window basis.  */
+   each window being updated.  */
 
 static void
 x_update_begin (f)
      struct frame *f;
 {
-  /* Nothing to do.  We have to do something though, otherwise the
-     function gets optimized away and the hook is no longer valid. */
-  struct frame *cf = f;
+  struct w32_display_info *display_info = FRAME_W32_DISPLAY_INFO (f);
+
+  /* Regenerate display palette before drawing if list of requested
+     colors has changed. */
+  if (display_info->regen_palette)
+  {
+    w32_regenerate_palette (f);
+    display_info->regen_palette = FALSE;
+  }
 }
 
 
@@ -573,14 +578,6 @@
 
   BLOCK_INPUT;
 
-  /* Regenerate display palette before drawing if list of requested
-     colors has changed. */
-  if (display_info->regen_palette)
-  {
-    w32_regenerate_palette (f);
-    display_info->regen_palette = FALSE;
-  }
-
   if (f == display_info->mouse_face_mouse_frame)
     {
       /* Don't do highlighting for mouse motion during the update.  */