]> git.saurik.com Git - wxWidgets.git/blob - docs/microwin/microwindows.patches
copied from old cocoa code from David, fixes #13732
[wxWidgets.git] / docs / microwin / microwindows.patches
1 diff -rbu2 ../microwindows-0.89pre8.orig/src/config ./src/config
2 --- ../microwindows-0.89pre8.orig/src/config Fri Dec 21 14:07:18 2001
3 +++ ./src/config Fri Dec 21 14:14:37 2001
4 @@ -47,7 +47,7 @@
5 #
6 ####################################################################
7 -OPTIMIZE = Y
8 -DEBUG = N
9 -VERBOSE = N
10 +OPTIMIZE = N
11 +DEBUG = Y
12 +VERBOSE = Y
13
14 ####################################################################
15 @@ -191,5 +191,5 @@
16 #
17 ####################################################################
18 -ERASEMOVE = Y
19 +ERASEMOVE = N
20 UPDATEREGIONS = Y
21
22 @@ -216,5 +216,5 @@
23
24 # X Window screen, mouse and kbd drivers
25 -X11 = N
26 +X11 = Y
27
28 ifeq ($(X11), Y)
29 diff -rbu2 ../microwindows-0.89pre8.orig/src/mwin/winevent.c ./src/mwin/winevent.c
30 --- ../microwindows-0.89pre8.orig/src/mwin/winevent.c Fri Dec 21 14:07:21 2001
31 +++ ./src/mwin/winevent.c Fri Dec 21 14:10:59 2001
32 @@ -167,5 +167,5 @@
33
34 /* then possibly send user mouse message*/
35 - if(hittest == HTCLIENT) {
36 + if(hittest == HTCLIENT || hwnd == GetCapture()) {
37 pt.x = cursorx;
38 pt.y = cursory;
39 Only in ./src/mwin: winevent.c~
40 diff -rbu2 ../microwindows-0.89pre8.orig/src/mwin/winuser.c ./src/mwin/winuser.c
41 --- ../microwindows-0.89pre8.orig/src/mwin/winuser.c Fri Dec 21 14:07:21 2001
42 +++ ./src/mwin/winuser.c Fri Dec 21 14:10:59 2001
43 @@ -137,7 +137,11 @@
44 }
45
46 +/*
47 + * A helper function for sharing code between PeekMessage and GetMessage
48 + */
49 +
50 BOOL WINAPI
51 -PeekMessage(LPMSG lpMsg, HWND hwnd, UINT uMsgFilterMin, UINT uMsgFilterMax,
52 - UINT wRemoveMsg)
53 +PeekMessageHelper(LPMSG lpMsg, HWND hwnd, UINT uMsgFilterMin, UINT uMsgFilterMax,
54 + UINT wRemoveMsg, BOOL returnIfEmptyQueue)
55 {
56 HWND wp;
57 @@ -146,4 +150,8 @@
58 /* check if no messages in queue*/
59 if(mwMsgHead.head == NULL) {
60 + /* Added by JACS so it doesn't reach MwSelect */
61 + if (returnIfEmptyQueue)
62 + return FALSE;
63 +
64 #if PAINTONCE
65 /* check all windows for pending paint messages*/
66 @@ -177,4 +185,12 @@
67
68 BOOL WINAPI
69 +PeekMessage(LPMSG lpMsg, HWND hwnd, UINT uMsgFilterMin, UINT uMsgFilterMax,
70 + UINT wRemoveMsg)
71 +{
72 + /* Never wait in MwSelect: pass TRUE */
73 + return PeekMessageHelper(lpMsg, hwnd, uMsgFilterMin, uMsgFilterMax, wRemoveMsg, TRUE);
74 +}
75 +
76 +BOOL WINAPI
77 GetMessage(LPMSG lpMsg,HWND hwnd,UINT wMsgFilterMin,UINT wMsgFilterMax)
78 {
79 @@ -183,5 +199,6 @@
80 * so this code will work
81 */
82 - while(!PeekMessage(lpMsg, hwnd, wMsgFilterMin, wMsgFilterMax,PM_REMOVE))
83 + /* Always wait in MwSelect if there are messages: pass FALSE */
84 + while(!PeekMessageHelper(lpMsg, hwnd, wMsgFilterMin, wMsgFilterMax,PM_REMOVE, FALSE))
85 continue;
86 return lpMsg->message != WM_QUIT;