[NTOS:KE/x64] Handle NMI vs swapgs race condition
[reactos.git] / win32ss / user / ntuser / focus.h
1 #pragma once
2
3 extern PUSER_MESSAGE_QUEUE gpqForeground;
4 extern PUSER_MESSAGE_QUEUE gpqForegroundPrev;
5 extern PTHREADINFO ptiLastInput;
6
7 /*
8 * These functions take the window handles from current message queue.
9 */
10 HWND FASTCALL IntGetCaptureWindow(VOID);
11 HWND FASTCALL co_UserSetCapture(HWND hWnd);
12 BOOL FASTCALL IntReleaseCapture(VOID);
13
14 /*
15 * These functions take the window handles from current thread queue.
16 */
17 HWND FASTCALL IntGetThreadFocusWindow(VOID);
18 HWND APIENTRY IntGetCapture(VOID);
19 HWND FASTCALL UserGetActiveWindow(VOID);
20 BOOL FASTCALL co_IntMouseActivateWindow(PWND Window);
21 BOOL FASTCALL co_IntSetForegroundWindow(PWND Window);
22 BOOL FASTCALL co_IntSetForegroundWindowMouse(PWND Window);
23 BOOL FASTCALL co_IntSetActiveWindow(PWND,BOOL,BOOL,BOOL);
24 BOOL FASTCALL IntUserSetActiveWindow(PWND,BOOL,BOOL,BOOL);
25 BOOL FASTCALL UserSetActiveWindow(PWND Wnd);
26 BOOL FASTCALL IntLockSetForegroundWindow(UINT uLockCode);
27 BOOL FASTCALL IntAllowSetForegroundWindow(DWORD dwProcessId);
28 VOID FASTCALL IntActivateWindow(PWND,PTHREADINFO,HANDLE,DWORD);
29 BOOL FASTCALL IntDeactivateWindow(PTHREADINFO,HANDLE);
30 BOOL FASTCALL co_IntSetForegroundMessageQueue(PWND,PTHREADINFO,BOOL,DWORD );
31 VOID FASTCALL UpdateShellHook(PWND);