Author: jgardou Date: Mon Apr 5 01:20:02 2010 New Revision: 46726
URL: http://svn.reactos.org/svn/reactos?rev=46726&view=rev Log: [WIN32K] Also send message to desktop window with HWND_BROADCAST.
Modified: branches/reactos-yarotows/subsystems/win32/win32k/ntuser/message.c
Modified: branches/reactos-yarotows/subsystems/win32/win32k/ntuser/message.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/subsystems/win3... ============================================================================== --- branches/reactos-yarotows/subsystems/win32/win32k/ntuser/message.c [iso-8859-1] (original) +++ branches/reactos-yarotows/subsystems/win32/win32k/ntuser/message.c [iso-8859-1] Mon Apr 5 01:20:02 2010 @@ -366,7 +366,7 @@ (LPARAM)Time, sizeof(LPARAM)); } - return 0; + return 0; } else { @@ -591,7 +591,7 @@ *HitTest = HTCLIENT; }
- if ( gspv.bMouseClickLock && + if ( gspv.bMouseClickLock && ( (Msg->message == WM_LBUTTONUP) || (Msg->message == WM_LBUTTONDOWN) ) ) { @@ -1206,7 +1206,7 @@ return FALSE; }
- if (!Wnd) + if (!Wnd) return UserPostThreadMessage( PtrToInt(PsGetCurrentThreadId()), Msg, wParam, @@ -1223,6 +1223,7 @@
if (List != NULL) { + UserPostMessage(DesktopWindow->hSelf, Msg, wParam, lParam); for (i = 0; List[i]; i++) UserPostMessage(List[i], Msg, wParam, lParam); ExFreePool(List); @@ -1447,6 +1448,9 @@ SetLastWin32Error(ERROR_INTERNAL_ERROR); return 0; } + + /* Send message to the desktop window too! */ + co_IntSendMessageTimeoutSingle(DesktopWindow->hSelf, Msg, wParam, lParam, uFlags, uTimeout, uResult);
Children = IntWinListChildren(DesktopWindow); if (NULL == Children) @@ -1653,6 +1657,7 @@
if (List != NULL) { + UserSendNotifyMessage(DesktopWindow->hSelf, Msg, wParam, lParam); for (i = 0; List[i]; i++) { UserSendNotifyMessage(List[i], Msg, wParam, lParam); @@ -2263,7 +2268,7 @@ BOOL Hit = FALSE; MSG SafeMsg;
- UserEnterExclusive(); + UserEnterExclusive(); _SEH2_TRY { ProbeForRead(UnsafeMsgInfo, sizeof(MSG), 1); @@ -2275,7 +2280,7 @@ Hit = TRUE; } _SEH2_END; - + if (!Hit) Res = IntDispatchMessage(&SafeMsg);
UserLeave(); @@ -2496,11 +2501,11 @@ { BadChk = TRUE; } - _SEH2_END; + _SEH2_END; } break; default: - break; + break; }
UserLeave();