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