Commit f7b146dc authored by Jason Rumney's avatar Jason Rumney

* 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)
parent 7fab235a
2009-03-15 Jason Rumney <jasonr@gnu.org>
* 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 <david.reitter@gmail.com>
* nsterm.m (ns_shutdown_properly, -terminate): Remove global state
......
......@@ -2841,7 +2841,12 @@ w32_wnd_proc (hwnd, msg, wParam, lParam)
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;
}
......
......@@ -4105,7 +4105,7 @@ w32_read_socket (sd, expected, hold_quit)
switch (msg.msg.message)
{
case WM_PAINT:
case WM_EMACS_PAINT:
f = x_window_to_frame (dpyinfo, msg.msg.hwnd);
if (f)
......
......@@ -609,7 +609,8 @@ do { \
#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)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment