diff --git a/reactos/include/reactos/win32k/ntuser.h b/reactos/include/reactos/win32k/ntuser.h index 660aca6dae4..85d30af16d6 100644 --- a/reactos/include/reactos/win32k/ntuser.h +++ b/reactos/include/reactos/win32k/ntuser.h @@ -1903,6 +1903,8 @@ NtUserQueryUserCounters( #define QUERY_WINDOW_UNIQUE_PROCESS_ID 0x00 #define QUERY_WINDOW_UNIQUE_THREAD_ID 0x01 +#define QUERY_WINDOW_ACTIVE 0x02 +#define QUERY_WINDOW_FOCUS 0x03 #define QUERY_WINDOW_ISHUNG 0x04 DWORD NTAPI diff --git a/reactos/subsystems/win32/win32k/ntuser/window.c b/reactos/subsystems/win32/win32k/ntuser/window.c index 7c682821f80..bf0119efb3a 100644 --- a/reactos/subsystems/win32/win32k/ntuser/window.c +++ b/reactos/subsystems/win32/win32k/ntuser/window.c @@ -3952,12 +3952,14 @@ NtUserMoveWindow( 0 = QWUniqueProcessId 1 = QWUniqueThreadId + 2 = QWActiveWindow + 3 = QWFocusWindow 4 = QWIsHung Implements IsHungAppWindow found by KJK::Hyperion. - 9 = QWKillWindow When I called this with hWnd == - DesktopWindow, it shutdown the system - and rebooted. + 9 = QWKillWindow When I called this with hWnd == + DesktopWindow, it shutdown the system + and rebooted. */ /* * @implemented @@ -3987,6 +3989,14 @@ NtUserQueryWindow(HWND hWnd, DWORD Index) Result = (DWORD)IntGetWndThreadId(Window); break; + case QUERY_WINDOW_ACTIVE: + Result = (DWORD)UserGetActiveWindow(); + break; + + case QUERY_WINDOW_FOCUS: + Result = (DWORD)IntGetFocusWindow(); + break; + case QUERY_WINDOW_ISHUNG: Result = (DWORD)MsqIsHung(Window->MessageQueue); break;