summary | 
shortlog | 
log | 
commit | commitdiff | 
tree
raw | 
patch | 
inline | side by side (from parent 1: 
555c3c2)
 
 var\r
     MsgRec : TMessage;\r
     a:integer;\r
 var\r
     MsgRec : TMessage;\r
     a:integer;\r
 begin\r
   Result := 0;  // This means we handled the message\r
 \r
 begin\r
   Result := 0;  // This means we handled the message\r
 \r
+  handled := false;\r
+\r
   {MsgRec.hwnd    := ahWnd;}\r
   MsgRec.wParam  := awParam;\r
   MsgRec.lParam  := alParam;\r
 \r
   {MsgRec.hwnd    := ahWnd;}\r
   MsgRec.wParam  := awParam;\r
   MsgRec.lParam  := alParam;\r
 \r
-  dotasks;\r
-  case auMsg of\r
+  if (ahwnd = hwndwcore) then begin\r
+   dotasks;\r
+   case auMsg of\r
     {$ifndef threadtimer}\r
     WM_TIMER: begin\r
     {$ifndef threadtimer}\r
     WM_TIMER: begin\r
       if msgrec.wparam = timerid_wcore then begin\r
         a := wcore_timehandler;\r
         killtimer(hwndwcore,timerid_wcore);\r
       if msgrec.wparam = timerid_wcore then begin\r
         a := wcore_timehandler;\r
         killtimer(hwndwcore,timerid_wcore);\r
     {WINMSG_TASK:dotasks;}\r
 \r
     WM_CLOSE: begin\r
     {WINMSG_TASK:dotasks;}\r
 \r
     WM_CLOSE: begin\r
     end;\r
     WM_DESTROY: begin\r
     end;\r
     WM_DESTROY: begin\r
-  else\r
-      Result := DefWindowProc(ahWnd, auMsg, awParam, alParam)\r
+\r
+  if not handled then Result := DefWindowProc(ahWnd, auMsg, awParam, alParam)\r
     Msg : TMsg;\r
 begin\r
     Result := FALSE;\r
     Msg : TMsg;\r
 begin\r
     Result := FALSE;\r
-    if PeekMessage(Msg, hwndwcore, 0, 0, PM_REMOVE) then begin\r
+    if PeekMessage(Msg, 0, 0, 0, PM_REMOVE) then begin\r
       Result := TRUE;\r
       DispatchMessage(Msg);\r
     end;\r
       Result := TRUE;\r
       DispatchMessage(Msg);\r
     end;\r