reactos/include/win32k
diff -u -r1.122 -r1.123
--- ntuser.h 2 Apr 2004 22:16:08 -0000 1.122
+++ ntuser.h 2 Apr 2004 23:54:26 -0000 1.123
@@ -1065,6 +1065,9 @@
DWORD Unknown3,
DWORD Unknown4);
+#define QUERY_WINDOW_UNIQUE_PROCESS_ID 0x00
+#define QUERY_WINDOW_UNIQUE_THREAD_ID 0x01
+#define QUERY_WINDOW_ISHUNG 0x04
DWORD
STDCALL
NtUserQueryWindow(
reactos/lib/user32/windows
diff -u -r1.104 -r1.105
--- window.c 2 Apr 2004 22:16:09 -0000 1.104
+++ window.c 2 Apr 2004 23:54:26 -0000 1.105
@@ -1,4 +1,4 @@
-/* $Id: window.c,v 1.104 2004/04/02 22:16:09 weiden Exp $
+/* $Id: window.c,v 1.105 2004/04/02 23:54:26 weiden Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS user32.dll
@@ -1456,14 +1456,13 @@
}
/*
- * @unimplemented
+ * @implemented
*/
BOOL
STDCALL
IsHungAppWindow(HWND hwnd)
{
- /* FIXME: ReactOS doesnt identify hung app windows yet */
- return FALSE;
+ return (NtUserQueryWindow(hwnd, QUERY_WINDOW_ISHUNG) != 0);
}
/*
reactos/subsys/win32k/ntuser
diff -u -r1.208 -r1.209
--- window.c 2 Apr 2004 20:51:08 -0000 1.208
+++ window.c 2 Apr 2004 23:54:26 -0000 1.209
@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-/* $Id: window.c,v 1.208 2004/04/02 20:51:08 weiden Exp $
+/* $Id: window.c,v 1.209 2004/04/02 23:54:26 weiden Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@@ -3200,14 +3200,18 @@
switch(Index)
{
- case 0x00:
+ case QUERY_WINDOW_UNIQUE_PROCESS_ID:
Result = (DWORD)IntGetWndProcessId(Window);
break;
- case 0x01:
+ case QUERY_WINDOW_UNIQUE_THREAD_ID:
Result = (DWORD)IntGetWndThreadId(Window);
break;
+ case QUERY_WINDOW_ISHUNG:
+ Result = (DWORD)MsqIsHung(Window->MessageQueue);
+ break;
+
default:
Result = (DWORD)NULL;
break;