From 32b0cf6fc6b8f5fab33c10c782f40d36feebbedb Mon Sep 17 00:00:00 2001 From: Katayama Hirofumi MZ Date: Mon, 31 May 2021 13:08:06 +0900 Subject: [PATCH] [WIN32SS][NTUSER] Improve HSHELL_WINDOWCREATED condition (#3697) Modify the condition of generating HSHELL_WINDOWCREATED, especially on WS_CHILD window style. CORE-15669 --- win32ss/user/ntuser/winpos.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/win32ss/user/ntuser/winpos.c b/win32ss/user/ntuser/winpos.c index bbe6ac5f904..71cf8a1cf8d 100644 --- a/win32ss/user/ntuser/winpos.c +++ b/win32ss/user/ntuser/winpos.c @@ -1904,7 +1904,16 @@ co_WinPosSetWindowPos( } else if (WinPos.flags & SWP_SHOWWINDOW) { - if ((Window->ExStyle & WS_EX_APPWINDOW) || + if (Window->style & WS_CHILD) + { + if ((Window->style & WS_POPUP) && (Window->ExStyle & WS_EX_APPWINDOW)) + { + co_IntShellHookNotify(HSHELL_WINDOWCREATED, (WPARAM)Window->head.h, 0); + if (!(WinPos.flags & SWP_NOACTIVATE)) + UpdateShellHook(Window); + } + } + else if ((Window->ExStyle & WS_EX_APPWINDOW) || (!(Window->ExStyle & WS_EX_TOOLWINDOW) && !Window->spwndOwner && (!Window->spwndParent || UserIsDesktopWindow(Window->spwndParent)))) {