Revision: 20240
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20240
Author:   dingto
Date:     2009-05-17 17:09:03 +0200 (Sun, 17 May 2009)

Log Message:
-----------
Patch #18758 for bug #17423 by Matt D. (foom) Thanks! 

"Mouse wheel zoom lost after rendering."

Modified Paths:
--------------
    trunk/blender/intern/ghost/intern/GHOST_SystemWin32.cpp

Modified: trunk/blender/intern/ghost/intern/GHOST_SystemWin32.cpp
===================================================================
--- trunk/blender/intern/ghost/intern/GHOST_SystemWin32.cpp     2009-05-17 
12:51:51 UTC (rev 20239)
+++ trunk/blender/intern/ghost/intern/GHOST_SystemWin32.cpp     2009-05-17 
15:09:03 UTC (rev 20240)
@@ -41,7 +41,7 @@
 #pragma warning (disable:4786) // get rid of stupid stl-visual compiler debug 
warning
 
 #include "GHOST_SystemWin32.h"
-
+//#include <stdio.h> //for printf()
 // win64 doesn't define GWL_USERDATA
 #ifdef WIN32
 #ifndef GWL_USERDATA
@@ -747,6 +747,9 @@
                                         * the message is sent asynchronously, 
so the window is activated immediately. 
                                         */
                                        event = 
processWindowEvent(LOWORD(wParam) ? GHOST_kEventWindowActivate : 
GHOST_kEventWindowDeactivate, window);
+                                       /* WARNING: Let DefWindowProc handle 
WM_ACTIVATE, otherwise WM_MOUSEWHEEL
+                                       will not be dispatched to OUR active 
window if we minimize one of OUR windows. */
+                                       lResult = ::DefWindowProc(hwnd, msg, 
wParam, lParam);
                                        break;
                                case WM_PAINT:
                                        /* An application sends the WM_PAINT 
message when the system or another application 
@@ -766,6 +769,7 @@
                                         * message without calling 
DefWindowProc.
                                         */
                                        event = 
processWindowEvent(GHOST_kEventWindowSize, window);
+                                       break;
                                case WM_CAPTURECHANGED:
                                        window->lostMouseCapture();
                                        break;
@@ -904,7 +908,8 @@
 
        if (event) {
                system->pushEvent(event);
-               lResult = 0;
+               if(!lResult) //WM_ACTIVATE might have returned something.
+                       lResult = 0;
        }
        else {
                lResult = ::DefWindowProc(hwnd, msg, wParam, lParam);


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to