Module: wine Branch: refs/heads/master Commit: 4d3282a5fbc8a4b0c92d11f13df795080afc7989 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=4d3282a5fbc8a4b0c92d11f1...
Author: Alexandre Julliard julliard@winehq.org Date: Thu Mar 30 13:22:27 2006 +0200
user: Don't send WM_PARENTNOTIFY to the desktop window.
---
dlls/user/message.c | 1 + dlls/user/win.c | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/dlls/user/message.c b/dlls/user/message.c index 8fe2ee7..18c5d4b 100644 --- a/dlls/user/message.c +++ b/dlls/user/message.c @@ -1563,6 +1563,7 @@ static void send_parent_notify( HWND hwn if (!(GetWindowLongW( hwnd, GWL_STYLE ) & WS_CHILD)) break; if (GetWindowLongW( hwnd, GWL_EXSTYLE ) & WS_EX_NOPARENTNOTIFY) break; if (!(parent = GetParent(hwnd))) break; + if (parent == GetDesktopWindow()) break; MapWindowPoints( hwnd, parent, &pt, 1 ); hwnd = parent; SendMessageW( hwnd, WM_PARENTNOTIFY, diff --git a/dlls/user/win.c b/dlls/user/win.c index 44c2461..10a1a4f 100644 --- a/dlls/user/win.c +++ b/dlls/user/win.c @@ -275,8 +275,12 @@ static void send_parent_notify( HWND hwn { if ((GetWindowLongW( hwnd, GWL_STYLE ) & (WS_CHILD | WS_POPUP)) == WS_CHILD && !(GetWindowLongW( hwnd, GWL_EXSTYLE ) & WS_EX_NOPARENTNOTIFY)) - SendMessageW( GetParent(hwnd), WM_PARENTNOTIFY, - MAKEWPARAM( msg, GetWindowLongPtrW( hwnd, GWLP_ID )), (LPARAM)hwnd ); + { + HWND parent = GetParent(hwnd); + if (parent && parent != GetDesktopWindow()) + SendMessageW( parent, WM_PARENTNOTIFY, + MAKEWPARAM( msg, GetWindowLongPtrW( hwnd, GWLP_ID )), (LPARAM)hwnd ); + } }