Commit 94aee7a7 authored by Kira Backes's avatar Kira Backes Committed by Alexandre Julliard

user32: Add MOUSEHOOKSTRUCTEX for mouse wheel support.

parent 032e088c
...@@ -2489,7 +2489,7 @@ static BOOL process_mouse_message( MSG *msg, UINT hw_id, ULONG_PTR extra_info, H ...@@ -2489,7 +2489,7 @@ static BOOL process_mouse_message( MSG *msg, UINT hw_id, ULONG_PTR extra_info, H
INT hittest; INT hittest;
EVENTMSG event; EVENTMSG event;
GUITHREADINFO info; GUITHREADINFO info;
MOUSEHOOKSTRUCT hook; MOUSEHOOKSTRUCTEX hook;
BOOL eatMsg; BOOL eatMsg;
/* find the window to dispatch this mouse message to */ /* find the window to dispatch this mouse message to */
...@@ -2585,17 +2585,19 @@ static BOOL process_mouse_message( MSG *msg, UINT hw_id, ULONG_PTR extra_info, H ...@@ -2585,17 +2585,19 @@ static BOOL process_mouse_message( MSG *msg, UINT hw_id, ULONG_PTR extra_info, H
/* message is accepted now (but may still get dropped) */ /* message is accepted now (but may still get dropped) */
hook.pt = msg->pt; hook.s.pt = msg->pt;
hook.hwnd = msg->hwnd; hook.s.hwnd = msg->hwnd;
hook.wHitTestCode = hittest; hook.s.wHitTestCode = hittest;
hook.dwExtraInfo = extra_info; hook.s.dwExtraInfo = extra_info;
hook.mouseData = msg->wParam;
if (HOOK_CallHooks( WH_MOUSE, remove ? HC_ACTION : HC_NOREMOVE, if (HOOK_CallHooks( WH_MOUSE, remove ? HC_ACTION : HC_NOREMOVE,
message, (LPARAM)&hook, TRUE )) message, (LPARAM)&hook, TRUE ))
{ {
hook.pt = msg->pt; hook.s.pt = msg->pt;
hook.hwnd = msg->hwnd; hook.s.hwnd = msg->hwnd;
hook.wHitTestCode = hittest; hook.s.wHitTestCode = hittest;
hook.dwExtraInfo = extra_info; hook.s.dwExtraInfo = extra_info;
hook.mouseData = msg->wParam;
HOOK_CallHooks( WH_CBT, HCBT_CLICKSKIPPED, message, (LPARAM)&hook, TRUE ); HOOK_CallHooks( WH_CBT, HCBT_CLICKSKIPPED, message, (LPARAM)&hook, TRUE );
accept_hardware_message( hw_id, TRUE ); accept_hardware_message( hw_id, TRUE );
return FALSE; return FALSE;
......
...@@ -385,6 +385,17 @@ typedef struct ...@@ -385,6 +385,17 @@ typedef struct
ULONG_PTR dwExtraInfo; ULONG_PTR dwExtraInfo;
} MOUSEHOOKSTRUCT, *PMOUSEHOOKSTRUCT, *LPMOUSEHOOKSTRUCT; } MOUSEHOOKSTRUCT, *PMOUSEHOOKSTRUCT, *LPMOUSEHOOKSTRUCT;
typedef struct
{
struct { /* MOUSEHOOKSTRUCT */
POINT pt;
HWND hwnd;
UINT wHitTestCode;
ULONG_PTR dwExtraInfo;
} DUMMYSTRUCTNAME;
DWORD mouseData;
} MOUSEHOOKSTRUCTEX, *PMOUSEHOOKSTRUCTEX, *LPMOUSEHOOKSTRUCTEX;
/* Hardware hook structure */ /* Hardware hook structure */
......
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