emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs/src ChangeLog w32fns.c w32term.c w32term.h


From: Jason Rumney
Subject: [Emacs-diffs] emacs/src ChangeLog w32fns.c w32term.c w32term.h
Date: Sun, 15 Mar 2009 14:53:55 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Jason Rumney <jasonr>   09/03/15 14:53:55

Modified files:
        src            : ChangeLog w32fns.c w32term.c w32term.h 

Log message:
        * w32term.h (WM_EMACS_PAINT): New message.
        * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
        * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
        before passing to lisp thread.  (Bug#950)

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/src/ChangeLog?cvsroot=emacs&r1=1.7428&r2=1.7429
http://cvs.savannah.gnu.org/viewcvs/emacs/src/w32fns.c?cvsroot=emacs&r1=1.356&r2=1.357
http://cvs.savannah.gnu.org/viewcvs/emacs/src/w32term.c?cvsroot=emacs&r1=1.321&r2=1.322
http://cvs.savannah.gnu.org/viewcvs/emacs/src/w32term.h?cvsroot=emacs&r1=1.86&r2=1.87

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/src/ChangeLog,v
retrieving revision 1.7428
retrieving revision 1.7429
diff -u -b -r1.7428 -r1.7429
--- ChangeLog   15 Mar 2009 01:21:39 -0000      1.7428
+++ ChangeLog   15 Mar 2009 14:53:53 -0000      1.7429
@@ -1,3 +1,10 @@
+2009-03-15  Jason Rumney  <address@hidden>
+
+       * w32term.h (WM_EMACS_PAINT): New message.
+       * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
+       * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
+       before passing to lisp thread.  (Bug#950)
+
 2009-03-14  David Reitter <address@hidden>
 
        * nsterm.m (ns_shutdown_properly, -terminate): Remove global state

Index: w32fns.c
===================================================================
RCS file: /sources/emacs/emacs/src/w32fns.c,v
retrieving revision 1.356
retrieving revision 1.357
diff -u -b -r1.356 -r1.357
--- w32fns.c    4 Mar 2009 13:36:34 -0000       1.356
+++ w32fns.c    15 Mar 2009 14:53:54 -0000      1.357
@@ -2841,7 +2841,12 @@
             EndPaint (hwnd, &paintStruct);
             leave_crit ();
 
-            my_post_msg (&wmsg, hwnd, msg, wParam, lParam);
+           /* Change the message type to prevent Windows from
+              combining WM_PAINT messages in the Lisp thread's queue,
+              since Windows assumes that each message queue is
+              dedicated to one frame and does not bother checking
+              that hwnd matches before combining them.  */
+            my_post_msg (&wmsg, hwnd, WM_EMACS_PAINT, wParam, lParam);
 
             return 0;
           }

Index: w32term.c
===================================================================
RCS file: /sources/emacs/emacs/src/w32term.c,v
retrieving revision 1.321
retrieving revision 1.322
diff -u -b -r1.321 -r1.322
--- w32term.c   12 Feb 2009 14:36:33 -0000      1.321
+++ w32term.c   15 Mar 2009 14:53:54 -0000      1.322
@@ -4105,7 +4105,7 @@
 
       switch (msg.msg.message)
        {
-       case WM_PAINT:
+       case WM_EMACS_PAINT:
          f = x_window_to_frame (dpyinfo, msg.msg.hwnd);
 
          if (f)

Index: w32term.h
===================================================================
RCS file: /sources/emacs/emacs/src/w32term.h,v
retrieving revision 1.86
retrieving revision 1.87
diff -u -b -r1.86 -r1.87
--- w32term.h   8 Jan 2009 03:16:07 -0000       1.86
+++ w32term.h   15 Mar 2009 14:53:55 -0000      1.87
@@ -609,7 +609,8 @@
 #define WM_EMACS_SHOW_CARET            (WM_EMACS_START + 17)
 #define WM_EMACS_HIDE_CARET            (WM_EMACS_START + 18)
 #define WM_EMACS_SETCURSOR             (WM_EMACS_START + 19)
-#define WM_EMACS_END                   (WM_EMACS_START + 20)
+#define WM_EMACS_PAINT                 (WM_EMACS_START + 20)
+#define WM_EMACS_END                   (WM_EMACS_START + 21)
 
 #define WND_FONTWIDTH_INDEX    (0)
 #define WND_LINEHEIGHT_INDEX   (4)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]