https://git.reactos.org/?p=reactos.git;a=commitdiff;h=6e5fde7ebb40532cbe9b81dcd3cee6a738969f65
commit 6e5fde7ebb40532cbe9b81dcd3cee6a738969f65 Author: Katayama Hirofumi MZ <katayama.hirofumi...@gmail.com> AuthorDate: Tue Dec 26 21:49:04 2023 +0900 Commit: GitHub <nore...@github.com> CommitDate: Tue Dec 26 21:49:04 2023 +0900 [COMCTL32] Property Sheet: Use PROPSHEET_IsDialogMessage in message loop (#6226) Fix Ctrl+Tab and Shift+Ctrl+Tab key combination action in property sheet. JIRA issue: CORE-17941 Use PROPSHEET_IsDialogMessage in the message loop of PropertySheetA/W function, instead of IsDialogMessage. --- dll/win32/comctl32/propsheet.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/dll/win32/comctl32/propsheet.c b/dll/win32/comctl32/propsheet.c index e58fd467a3d..fa348c249f5 100644 --- a/dll/win32/comctl32/propsheet.c +++ b/dll/win32/comctl32/propsheet.c @@ -2787,6 +2787,10 @@ static void PROPSHEET_CleanUp(HWND hwndDlg) GlobalFree(psInfo); } +#ifdef __REACTOS__ +static BOOL PROPSHEET_IsDialogMessage(HWND hwnd, LPMSG lpMsg); +#endif + static INT do_loop(const PropSheetInfo *psInfo) { MSG msg; @@ -2799,7 +2803,11 @@ static INT do_loop(const PropSheetInfo *psInfo) if(ret == -1) break; +#ifdef __REACTOS__ + if (!PROPSHEET_IsDialogMessage(hwnd, &msg)) +#else if(!IsDialogMessageW(hwnd, &msg)) +#endif { TranslateMessage(&msg); DispatchMessageW(&msg);