include: Add touch and pointer input related winuser.h declarations.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
This commit is contained in:
Rémi Bernon 2021-05-21 14:57:46 +02:00 committed by Alexandre Julliard
parent 0d5c6d55bf
commit 834ade753e

View file

@ -665,6 +665,8 @@ typedef struct tagGESTURECONFIG {
#define GESTURECONFIGMAXCOUNT 256
#define GCF_INCLUDE_ANCESTORS 0x00000001
#define GID_BEGIN 1
#define GID_END 2
#define GID_ZOOM 3
@ -1059,6 +1061,8 @@ WINUSERAPI BOOL WINAPI SetSysColors(INT,const INT*,const COLORREF*);
#define SM_CMETRICS 90
#define SM_MOUSEHORIZONTALWHEELPRESENT 91
#define SM_CXPADDEDBORDER 92
#define SM_DIGITIZER 94
#define SM_MAXIMUMTOUCHES 95
#define SM_REMOTESESSION 0x1000
#define SM_SHUTTINGDOWN 0x2000
@ -2490,6 +2494,14 @@ typedef struct tagDROPSTRUCT
#define SPI_SETFOCUSBORDERHEIGHT 0x2011
#define SPI_GETFONTSMOOTHINGORIENTATION 0x2012
#define SPI_SETFONTSMOOTHINGORIENTATION 0x2013
#define SPI_GETCONTACTVISUALIZATION 0x2018
#define SPI_SETCONTACTVISUALIZATION 0x2019
#define SPI_GETGESTUREVISUALIZATION 0x201A
#define SPI_SETGESTUREVISUALIZATION 0x201B
#define SPI_GETPENVISUALIZATION 0x201E
#define SPI_SETPENVISUALIZATION 0x201F
#define SPI_GETPENARBITRATIONTYPE 0x2020
#define SPI_SETPENARBITRATIONTYPE 0x2021
#define FE_FONTSMOOTHINGSTANDARD 0x0001
#define FE_FONTSMOOTHINGCLEARTYPE 0x0002
@ -2498,6 +2510,30 @@ typedef struct tagDROPSTRUCT
#define FE_FONTSMOOTHINGORIENTATIONBGR 0x0000
#define FE_FONTSMOOTHINGORIENTATIONRGB 0x0001
#define CONTACTVISUALIZATION_OFF 0x0000
#define CONTACTVISUALIZATION_ON 0x0001
#define CONTACTVISUALIZATION_PRESENTATIONMODE 0x0002
#define GESTUREVISUALIZATION_OFF 0x0000
#define GESTUREVISUALIZATION_ON 0x001F
#define GESTUREVISUALIZATION_TAP 0x0001
#define GESTUREVISUALIZATION_DOUBLETAP 0x0002
#define GESTUREVISUALIZATION_PRESSANDTAP 0x0004
#define GESTUREVISUALIZATION_PRESSANDHOLD 0x0008
#define GESTUREVISUALIZATION_RIGHTTAP 0x0010
#define PENVISUALIZATION_ON 0x0023
#define PENVISUALIZATION_OFF 0x0000
#define PENVISUALIZATION_TAP 0x0001
#define PENVISUALIZATION_DOUBLETAP 0x0002
#define PENVISUALIZATION_CURSOR 0x0020
#define PENARBITRATIONTYPE_NONE 0x0000
#define PENARBITRATIONTYPE_WIN8 0x0001
#define PENARBITRATIONTYPE_FIS 0x0002
#define PENARBITRATIONTYPE_SPT 0x0003
#define PENARBITRATIONTYPE_MAX 0x0004
#define SETWALLPAPER_DEFAULT ((LPWSTR)-1)
/* SystemParametersInfo flags */
@ -2962,7 +2998,9 @@ typedef struct tagTRACKMOUSEEVENT {
#define QS_HOTKEY 0x0080
#define QS_ALLPOSTMESSAGE 0x0100
#define QS_RAWINPUT 0x0400
#define QS_INPUT (QS_MOUSE | QS_KEY | QS_RAWINPUT)
#define QS_TOUCH 0x0800
#define QS_POINTER 0x1000
#define QS_INPUT (QS_MOUSE | QS_KEY | QS_RAWINPUT | QS_TOUCH | QS_POINTER)
#define QS_ALLEVENTS (QS_INPUT | QS_POSTMESSAGE | QS_TIMER | QS_PAINT | QS_HOTKEY)
#define QS_ALLINPUT (QS_ALLEVENTS | QS_SENDMESSAGE)
@ -3404,12 +3442,20 @@ typedef TOUCHINPUT const * PCTOUCHINPUT;
#define TOUCHEVENTF_PEN 0x0040
#define TOUCHEVENTF_PALM 0x0080
#define TOUCHINPUTMASKF_TIMEFROMSYSTEM 0x0001
#define TOUCHINPUTMASKF_EXTRAINFO 0x0002
#define TOUCHINPUTMASKF_CONTACTAREA 0x0004
#define TWF_FINETOUCH 0x0001
#define TWF_WANTPALM 0x0002
/* Gesture definitions */
DECLARE_HANDLE(HGESTUREINFO);
#define GF_BEGIN 0x00000001
#define GF_INERTIA 0x00000002
#define GF_END 0x00000004
typedef struct tagGESTUREINFO {
UINT cbSize;
DWORD dwFlags;
@ -3423,8 +3469,33 @@ typedef struct tagGESTUREINFO {
} GESTUREINFO, *PGESTUREINFO;
typedef GESTUREINFO const * PCGESTUREINFO;
typedef struct tagGESTURENOTIFYSTRUCT
{
UINT cbSize;
DWORD dwFlags;
HWND hwndTarget;
POINTS ptsLocation;
DWORD dwInstanceID;
} GESTURENOTIFYSTRUCT, *PGESTURENOTIFYSTRUCT;
#define GID_ROTATE_ANGLE_TO_ARGUMENT(a) ((USHORT)((((a) + 2. * M_PI) / (4. * M_PI)) * 65535.))
#define GID_ROTATE_ANGLE_FROM_ARGUMENT(a) ((((double)(a) / 65535.) * 4. * M_PI) - 2. * M_PI)
#define POINTER_DEVICE_PRODUCT_STRING_MAX 520
#define PDC_ARRIVAL 0x0001
#define PDC_REMOVAL 0x0002
#define PDC_ORIENTATION_0 0x0004
#define PDC_ORIENTATION_90 0x0008
#define PDC_ORIENTATION_180 0x0010
#define PDC_ORIENTATION_270 0x0020
#define PDC_MODE_DEFAULT 0x0040
#define PDC_MODE_CENTERED 0x0080
#define PDC_MAPPING_CHANGE 0x0100
#define PDC_RESOLUTION 0x0200
#define PDC_ORIGIN 0x0400
#define PDC_MODE_ASPECTRATIOPRESERVED 0x0800
typedef enum tagPOINTER_DEVICE_TYPE {
POINTER_DEVICE_TYPE_INTEGRATED_PEN = 0x00000001,
POINTER_DEVICE_TYPE_EXTERNAL_PEN = 0x00000002,
@ -3443,15 +3514,260 @@ typedef struct tagPOINTER_DEVICE_INFO {
WCHAR productString[POINTER_DEVICE_PRODUCT_STRING_MAX];
} POINTER_DEVICE_INFO;
typedef struct tagPOINTER_DEVICE_PROPERTY
{
INT32 logicalMin;
INT32 logicalMax;
INT32 physicalMin;
INT32 physicalMax;
UINT32 unit;
UINT32 unitExponent;
USHORT usagePageId;
USHORT usageId;
} POINTER_DEVICE_PROPERTY;
typedef enum tagPOINTER_DEVICE_CURSOR_TYPE
{
POINTER_DEVICE_CURSOR_TYPE_UNKNOWN = 0x00000000,
POINTER_DEVICE_CURSOR_TYPE_TIP = 0x00000001,
POINTER_DEVICE_CURSOR_TYPE_ERASER = 0x00000002,
POINTER_DEVICE_CURSOR_TYPE_MAX = 0xFFFFFFFF,
} POINTER_DEVICE_CURSOR_TYPE;
typedef struct tagPOINTER_DEVICE_CURSOR_INFO
{
UINT32 cursorId;
POINTER_DEVICE_CURSOR_TYPE cursor;
} POINTER_DEVICE_CURSOR_INFO;
enum tagPOINTER_INPUT_TYPE
{
PT_POINTER = 1,
PT_TOUCH,
PT_PEN,
PT_MOUSE,
PT_TOUCHPAD,
PT_TOUCH = 2,
PT_PEN = 3,
PT_MOUSE = 4,
PT_TOUCHPAD = 5,
};
typedef DWORD POINTER_INPUT_TYPE;
typedef UINT32 POINTER_FLAGS;
#define POINTER_FLAG_NONE 0x00000000
#define POINTER_FLAG_NEW 0x00000001
#define POINTER_FLAG_INRANGE 0x00000002
#define POINTER_FLAG_INCONTACT 0x00000004
#define POINTER_FLAG_FIRSTBUTTON 0x00000010
#define POINTER_FLAG_SECONDBUTTON 0x00000020
#define POINTER_FLAG_THIRDBUTTON 0x00000040
#define POINTER_FLAG_FOURTHBUTTON 0x00000080
#define POINTER_FLAG_FIFTHBUTTON 0x00000100
#define POINTER_FLAG_PRIMARY 0x00002000
#define POINTER_FLAG_CONFIDENCE 0x00004000
#define POINTER_FLAG_CANCELED 0x00008000
#define POINTER_FLAG_DOWN 0x00010000
#define POINTER_FLAG_UPDATE 0x00020000
#define POINTER_FLAG_UP 0x00040000
#define POINTER_FLAG_WHEEL 0x00080000
#define POINTER_FLAG_HWHEEL 0x00100000
#define POINTER_FLAG_CAPTURECHANGED 0x00200000
#define POINTER_FLAG_HASTRANSFORM 0x00400000
#define POINTER_MOD_SHIFT 0x0004
#define POINTER_MOD_CTRL 0x0008
typedef enum tagPOINTER_BUTTON_CHANGE_TYPE
{
POINTER_CHANGE_NONE,
POINTER_CHANGE_FIRSTBUTTON_DOWN,
POINTER_CHANGE_FIRSTBUTTON_UP,
POINTER_CHANGE_SECONDBUTTON_DOWN,
POINTER_CHANGE_SECONDBUTTON_UP,
POINTER_CHANGE_THIRDBUTTON_DOWN,
POINTER_CHANGE_THIRDBUTTON_UP,
POINTER_CHANGE_FOURTHBUTTON_DOWN,
POINTER_CHANGE_FOURTHBUTTON_UP,
POINTER_CHANGE_FIFTHBUTTON_DOWN,
POINTER_CHANGE_FIFTHBUTTON_UP,
} POINTER_BUTTON_CHANGE_TYPE;
typedef struct tagPOINTER_INFO
{
POINTER_INPUT_TYPE pointerType;
UINT32 pointerId;
UINT32 frameId;
POINTER_FLAGS pointerFlags;
HANDLE sourceDevice;
HWND hwndTarget;
POINT ptPixelLocation;
POINT ptHimetricLocation;
POINT ptPixelLocationRaw;
POINT ptHimetricLocationRaw;
DWORD dwTime;
UINT32 historyCount;
INT32 InputData;
DWORD dwKeyStates;
UINT64 PerformanceCount;
POINTER_BUTTON_CHANGE_TYPE ButtonChangeType;
} POINTER_INFO;
typedef UINT32 TOUCH_FLAGS;
#define TOUCH_FLAG_NONE 0x00000000
typedef UINT32 TOUCH_MASK;
#define TOUCH_MASK_NONE 0x00000000
#define TOUCH_MASK_CONTACTAREA 0x00000001
#define TOUCH_MASK_ORIENTATION 0x00000002
#define TOUCH_MASK_PRESSURE 0x00000004
typedef struct tagPOINTER_TOUCH_INFO
{
POINTER_INFO pointerInfo;
TOUCH_FLAGS touchFlags;
TOUCH_MASK touchMask;
RECT rcContact;
RECT rcContactRaw;
UINT32 orientation;
UINT32 pressure;
} POINTER_TOUCH_INFO;
typedef UINT32 PEN_FLAGS;
#define PEN_FLAG_NONE 0x00000000
#define PEN_FLAG_BARREL 0x00000001
#define PEN_FLAG_INVERTED 0x00000002
#define PEN_FLAG_ERASER 0x00000004
typedef UINT32 PEN_MASK;
#define PEN_MASK_NONE 0x00000000
#define PEN_MASK_PRESSURE 0x00000001
#define PEN_MASK_ROTATION 0x00000002
#define PEN_MASK_TILT_X 0x00000004
#define PEN_MASK_TILT_Y 0x00000008
typedef struct tagPOINTER_PEN_INFO
{
POINTER_INFO pointerInfo;
PEN_FLAGS penFlags;
PEN_MASK penMask;
UINT32 pressure;
UINT32 rotation;
INT32 tiltX;
INT32 tiltY;
} POINTER_PEN_INFO;
#define POINTER_MESSAGE_FLAG_NEW 0x00000001
#define POINTER_MESSAGE_FLAG_INRANGE 0x00000002
#define POINTER_MESSAGE_FLAG_INCONTACT 0x00000004
#define POINTER_MESSAGE_FLAG_FIRSTBUTTON 0x00000010
#define POINTER_MESSAGE_FLAG_SECONDBUTTON 0x00000020
#define POINTER_MESSAGE_FLAG_THIRDBUTTON 0x00000040
#define POINTER_MESSAGE_FLAG_FOURTHBUTTON 0x00000080
#define POINTER_MESSAGE_FLAG_FIFTHBUTTON 0x00000100
#define POINTER_MESSAGE_FLAG_PRIMARY 0x00002000
#define POINTER_MESSAGE_FLAG_CONFIDENCE 0x00004000
#define POINTER_MESSAGE_FLAG_CANCELED 0x00008000
#define GET_POINTERID_WPARAM(wparam) (LOWORD(wparam))
#define IS_POINTER_FLAG_SET_WPARAM(wparam, flags) ((HIWORD(wparam) & (flags)) == (flags))
#define IS_POINTER_NEW_WPARAM(wparam) IS_POINTER_FLAG_SET_WPARAM(wparam, POINTER_MESSAGE_FLAG_NEW)
#define IS_POINTER_INRANGE_WPARAM(wparam) IS_POINTER_FLAG_SET_WPARAM(wparam, POINTER_MESSAGE_FLAG_INRANGE)
#define IS_POINTER_INCONTACT_WPARAM(wparam) IS_POINTER_FLAG_SET_WPARAM(wparam, POINTER_MESSAGE_FLAG_INCONTACT)
#define IS_POINTER_FIRSTBUTTON_WPARAM(wparam) IS_POINTER_FLAG_SET_WPARAM(wparam, POINTER_MESSAGE_FLAG_FIRSTBUTTON)
#define IS_POINTER_SECONDBUTTON_WPARAM(wparam) IS_POINTER_FLAG_SET_WPARAM(wparam, POINTER_MESSAGE_FLAG_SECONDBUTTON)
#define IS_POINTER_THIRDBUTTON_WPARAM(wparam) IS_POINTER_FLAG_SET_WPARAM(wparam, POINTER_MESSAGE_FLAG_THIRDBUTTON)
#define IS_POINTER_FOURTHBUTTON_WPARAM(wparam) IS_POINTER_FLAG_SET_WPARAM(wparam, POINTER_MESSAGE_FLAG_FOURTHBUTTON)
#define IS_POINTER_FIFTHBUTTON_WPARAM(wparam) IS_POINTER_FLAG_SET_WPARAM(wparam, POINTER_MESSAGE_FLAG_FIFTHBUTTON)
#define IS_POINTER_PRIMARY_WPARAM(wparam) IS_POINTER_FLAG_SET_WPARAM(wparam, POINTER_MESSAGE_FLAG_PRIMARY)
#define HAS_POINTER_CONFIDENCE_WPARAM(wparam) IS_POINTER_FLAG_SET_WPARAM(wparam, POINTER_MESSAGE_FLAG_CONFIDENCE)
#define IS_POINTER_CANCELED_WPARAM(wparam) IS_POINTER_FLAG_SET_WPARAM(wparam, POINTER_MESSAGE_FLAG_CANCELED)
#define PA_ACTIVATE MA_ACTIVATE
#define PA_NOACTIVATE MA_NOACTIVATE
#define MAX_TOUCH_COUNT 256
#define TOUCH_FEEDBACK_DEFAULT 0x1
#define TOUCH_FEEDBACK_INDIRECT 0x2
#define TOUCH_FEEDBACK_NONE 0x3
#define TOUCH_HIT_TESTING_DEFAULT 0x0
#define TOUCH_HIT_TESTING_CLIENT 0x1
#define TOUCH_HIT_TESTING_NONE 0x2
typedef struct tagTOUCH_HIT_TESTING_PROXIMITY_EVALUATION
{
UINT16 score;
POINT adjustedPoint;
} TOUCH_HIT_TESTING_PROXIMITY_EVALUATION, *PTOUCH_HIT_TESTING_PROXIMITY_EVALUATION;
typedef struct tagTOUCH_HIT_TESTING_INPUT
{
UINT32 pointerId;
POINT point;
RECT boundingBox;
RECT nonOccludedBoundingBox;
UINT32 orientation;
} TOUCH_HIT_TESTING_INPUT, *PTOUCH_HIT_TESTING_INPUT;
#define TOUCH_HIT_TESTING_PROXIMITY_CLOSEST 0x0
#define TOUCH_HIT_TESTING_PROXIMITY_FARTHEST 0xFFF
typedef enum
{
POINTER_FEEDBACK_DEFAULT = 1,
POINTER_FEEDBACK_INDIRECT = 2,
POINTER_FEEDBACK_NONE = 3,
} POINTER_FEEDBACK_MODE;
typedef enum tagFEEDBACK_TYPE
{
FEEDBACK_TOUCH_CONTACTVISUALIZATION = 1,
FEEDBACK_PEN_BARRELVISUALIZATION = 2,
FEEDBACK_PEN_TAP = 3,
FEEDBACK_PEN_DOUBLETAP = 4,
FEEDBACK_PEN_PRESSANDHOLD = 5,
FEEDBACK_PEN_RIGHTTAP = 6,
FEEDBACK_TOUCH_TAP = 7,
FEEDBACK_TOUCH_DOUBLETAP = 8,
FEEDBACK_TOUCH_PRESSANDHOLD = 9,
FEEDBACK_TOUCH_RIGHTTAP = 10,
FEEDBACK_GESTURE_PRESSANDTAP = 11,
FEEDBACK_MAX = 0xFFFFFFFF
} FEEDBACK_TYPE;
#define GWFS_INCLUDE_ANCESTORS 0x00000001
typedef struct tagPOINTER_TYPE_INFO
{
POINTER_INPUT_TYPE type;
union
{
POINTER_TOUCH_INFO touchInfo;
POINTER_PEN_INFO penInfo;
} DUMMYUNIONNAME;
} POINTER_TYPE_INFO, *PPOINTER_TYPE_INFO;
typedef struct tagINPUT_TRANSFORM
{
union
{
struct
{
float _11, _12, _13, _14;
float _21, _22, _23, _24;
float _31, _32, _33, _34;
float _41, _42, _43, _44;
} DUMMYSTRUCTNAME;
float m[4][4];
} DUMMYUNIONNAME;
} INPUT_TRANSFORM;
DECLARE_HANDLE(HSYNTHETICPOINTERDEVICE);
#define NID_INTEGRATED_TOUCH 0x00000001
#define NID_EXTERNAL_TOUCH 0x00000002
#define NID_INTEGRATED_PEN 0x00000004
#define NID_EXTERNAL_PEN 0x00000008
#define NID_MULTI_INPUT 0x00000040
#define NID_READY 0x00000080
typedef struct tagAUDIODESCRIPTION
{
@ -3590,6 +3906,7 @@ WINUSERAPI BOOL WINAPI ClipCursor(const RECT*);
WINUSERAPI BOOL WINAPI CloseClipboard(void);
WINUSERAPI BOOL WINAPI CloseDesktop(HDESK);
WINUSERAPI BOOL WINAPI CloseTouchInputHandle(HTOUCHINPUT);
WINUSERAPI BOOL WINAPI CloseGestureInfoHandle(HGESTUREINFO);
WINUSERAPI BOOL WINAPI CloseWindow(HWND);
WINUSERAPI BOOL WINAPI CloseWindowStation(HWINSTA);
WINUSERAPI INT WINAPI CopyAcceleratorTableA(HACCEL,LPACCEL,INT);
@ -3635,6 +3952,7 @@ WINUSERAPI HWINSTA WINAPI CreateWindowStationW(LPCWSTR,DWORD,ACCESS_MASK,LPS
WINUSERAPI HWND WINAPI CreateMDIWindowA(LPCSTR,LPCSTR,DWORD,INT,INT,INT,INT,HWND,HINSTANCE,LPARAM);
WINUSERAPI HWND WINAPI CreateMDIWindowW(LPCWSTR,LPCWSTR,DWORD,INT,INT,INT,INT,HWND,HINSTANCE,LPARAM);
#define CreateMDIWindow WINELIB_NAME_AW(CreateMDIWindow)
WINUSERAPI HSYNTHETICPOINTERDEVICE WINAPI CreateSyntheticPointerDevice(POINTER_INPUT_TYPE,ULONG,POINTER_FEEDBACK_MODE);
WINUSERAPI LRESULT WINAPI DefDlgProcA(HWND,UINT,WPARAM,LPARAM);
WINUSERAPI LRESULT WINAPI DefDlgProcW(HWND,UINT,WPARAM,LPARAM);
#define DefDlgProc WINELIB_NAME_AW(DefDlgProc)
@ -3657,6 +3975,7 @@ WINUSERAPI BOOL WINAPI DestroyCaret(void);
WINUSERAPI BOOL WINAPI DestroyCursor(HCURSOR);
WINUSERAPI BOOL WINAPI DestroyIcon(HICON);
WINUSERAPI BOOL WINAPI DestroyMenu(HMENU);
WINUSERAPI void WINAPI DestroySyntheticPointerDevice(HSYNTHETICPOINTERDEVICE);
WINUSERAPI BOOL WINAPI DestroyWindow(HWND);
#define DialogBoxA(inst,template,owner,func) DialogBoxParamA(inst,template,owner,func,0)
#define DialogBoxW(inst,template,owner,func) DialogBoxParamW(inst,template,owner,func,0)
@ -3711,6 +4030,7 @@ WINUSERAPI INT WINAPI DrawTextExW(HDC,LPWSTR,INT,LPRECT,UINT,LPDRAWTEXTP
WINUSERAPI BOOL WINAPI EmptyClipboard(void);
WINUSERAPI BOOL WINAPI EnableMenuItem(HMENU,UINT,UINT);
WINUSERAPI BOOL WINAPI EnableMouseInPointer(BOOL);
WINUSERAPI BOOL WINAPI EnableMouseInPointerForThread(VOID);
WINUSERAPI BOOL WINAPI EnableNonClientDpiScaling(HWND);
WINUSERAPI BOOL WINAPI EnableScrollBar(HWND,UINT,UINT);
WINUSERAPI BOOL WINAPI EnableWindow(HWND,BOOL);
@ -3736,6 +4056,8 @@ WINUSERAPI BOOL WINAPI EnumWindows(WNDENUMPROC,LPARAM);
WINUSERAPI BOOL WINAPI EnumWindowStationsA(WINSTAENUMPROCA,LPARAM);
WINUSERAPI BOOL WINAPI EnumWindowStationsW(WINSTAENUMPROCW,LPARAM);
#define EnumWindowStations WINELIB_NAME_AW(EnumWindowStations)
WINUSERAPI BOOL WINAPI EvaluateProximityToRect(const RECT*,const TOUCH_HIT_TESTING_INPUT*,TOUCH_HIT_TESTING_PROXIMITY_EVALUATION*);
WINUSERAPI BOOL WINAPI EvaluateProximityToPolygon(UINT32,const POINT*,const TOUCH_HIT_TESTING_INPUT*,TOUCH_HIT_TESTING_PROXIMITY_EVALUATION*);
WINUSERAPI INT WINAPI ExcludeUpdateRgn(HDC,HWND);
#define ExitWindows(a,b) ExitWindowsEx(EWX_LOGOFF,0xffffffff)
WINUSERAPI BOOL WINAPI ExitWindowsEx(UINT,DWORD);
@ -3815,6 +4137,7 @@ WINUSERAPI UINT WINAPI GetDpiForSystem(void);
WINUSERAPI HWND WINAPI GetFocus(void);
WINUSERAPI HWND WINAPI GetForegroundWindow(void);
WINUSERAPI BOOL WINAPI GetGestureConfig(HWND,DWORD,DWORD,UINT*,GESTURECONFIG*,UINT);
WINUSERAPI BOOL WINAPI GetGestureExtraArgs(HGESTUREINFO,UINT,BYTE*);
WINUSERAPI BOOL WINAPI GetGestureInfo(HGESTUREINFO,PGESTUREINFO);
WINUSERAPI BOOL WINAPI GetGUIThreadInfo(DWORD,GUITHREADINFO*);
WINUSERAPI DWORD WINAPI GetGuiResources(HANDLE,DWORD);
@ -3878,7 +4201,26 @@ WINUSERAPI HWND WINAPI GetNextDlgTabItem(HWND,HWND,BOOL);
WINUSERAPI HWND WINAPI GetOpenClipboardWindow(void);
WINUSERAPI HWND WINAPI GetParent(HWND);
WINUSERAPI BOOL WINAPI GetPhysicalCursorPos(POINT*);
WINUSERAPI BOOL WINAPI GetPointerType(UINT32,POINTER_INPUT_TYPE *);
WINUSERAPI BOOL WINAPI GetPointerDevice(HANDLE device,POINTER_DEVICE_INFO*);
WINUSERAPI BOOL WINAPI GetPointerDeviceCursors(HANDLE,UINT32*,POINTER_DEVICE_CURSOR_INFO*);
WINUSERAPI BOOL WINAPI GetPointerDeviceProperties(HANDLE device,UINT32*,POINTER_DEVICE_PROPERTY*);
WINUSERAPI BOOL WINAPI GetPointerDeviceRects(HANDLE,RECT*,RECT*);
WINUSERAPI BOOL WINAPI GetPointerDevices(UINT32*,POINTER_DEVICE_INFO*);
WINUSERAPI BOOL WINAPI GetPointerInputTransform(UINT32,UINT32,INPUT_TRANSFORM*);
WINUSERAPI BOOL WINAPI GetPointerPenInfo(UINT32,POINTER_PEN_INFO*);
WINUSERAPI BOOL WINAPI GetPointerPenInfoHistory(UINT32,UINT32*,POINTER_PEN_INFO*);
WINUSERAPI BOOL WINAPI GetPointerFramePenInfo(UINT32,UINT32*,POINTER_PEN_INFO*);
WINUSERAPI BOOL WINAPI GetPointerFramePenInfoHistory(UINT32,UINT32*,UINT32*,POINTER_PEN_INFO*);
WINUSERAPI BOOL WINAPI GetPointerType(UINT32,POINTER_INPUT_TYPE*);
WINUSERAPI BOOL WINAPI GetPointerCursorId(UINT32,UINT32*);
WINUSERAPI BOOL WINAPI GetPointerInfo(UINT32,POINTER_INFO*);
WINUSERAPI BOOL WINAPI GetPointerInfoHistory(UINT32,UINT32*,POINTER_INFO*);
WINUSERAPI BOOL WINAPI GetPointerFrameInfo(UINT32,UINT32*,POINTER_INFO*);
WINUSERAPI BOOL WINAPI GetPointerFrameInfoHistory(UINT32,UINT32*,UINT32*,POINTER_INFO*);
WINUSERAPI BOOL WINAPI GetPointerTouchInfo(UINT32,POINTER_TOUCH_INFO*);
WINUSERAPI BOOL WINAPI GetPointerTouchInfoHistory(UINT32,UINT32*,POINTER_TOUCH_INFO*);
WINUSERAPI BOOL WINAPI GetPointerFrameTouchInfo(UINT32,UINT32*,POINTER_TOUCH_INFO*);
WINUSERAPI BOOL WINAPI GetPointerFrameTouchInfoHistory(UINT32,UINT32*,UINT32*,POINTER_TOUCH_INFO*);
WINUSERAPI INT WINAPI GetPriorityClipboardFormat(UINT*,INT);
WINUSERAPI BOOL WINAPI GetProcessDefaultLayout(DWORD*);
WINUSERAPI BOOL WINAPI GetProcessDpiAwarenessInternal(HANDLE,DPI_AWARENESS*);
@ -3886,6 +4228,7 @@ WINUSERAPI HANDLE WINAPI GetPropA(HWND,LPCSTR);
WINUSERAPI HANDLE WINAPI GetPropW(HWND,LPCWSTR);
#define GetProp WINELIB_NAME_AW(GetProp)
WINUSERAPI DWORD WINAPI GetQueueStatus(UINT);
WINUSERAPI BOOL WINAPI GetRawPointerDeviceData(UINT32,UINT32,UINT32,POINTER_DEVICE_PROPERTY*,LONG*);
WINUSERAPI BOOL WINAPI GetScrollInfo(HWND,INT,LPSCROLLINFO);
WINUSERAPI BOOL WINAPI GetScrollBarInfo(HWND,LONG,LPSCROLLBARINFO);
WINUSERAPI INT WINAPI GetScrollPos(HWND,INT);
@ -3917,6 +4260,7 @@ WINUSERAPI DWORD WINAPI GetWindowContextHelpId(HWND);
WINUSERAPI HDC WINAPI GetWindowDC(HWND);
WINUSERAPI BOOL WINAPI GetWindowDisplayAffinity(HWND,DWORD*);
WINUSERAPI DPI_AWARENESS_CONTEXT WINAPI GetWindowDpiAwarenessContext(HWND);
WINUSERAPI BOOL WINAPI GetWindowFeedbackSetting(HWND,FEEDBACK_TYPE,DWORD,UINT32*,void*);
WINUSERAPI BOOL WINAPI GetWindowInfo(HWND, PWINDOWINFO);
WINUSERAPI LONG WINAPI GetWindowLongA(HWND,INT);
WINUSERAPI LONG WINAPI GetWindowLongW(HWND,INT);
@ -3951,6 +4295,9 @@ WINUSERAPI BOOL WINAPI GrayStringW(HDC,HBRUSH,GRAYSTRINGPROC,LPARAM,INT,I
#define GrayString WINELIB_NAME_AW(GrayString)
WINUSERAPI BOOL WINAPI HideCaret(HWND);
WINUSERAPI BOOL WINAPI HiliteMenuItem(HWND,HMENU,UINT,UINT);
WINUSERAPI BOOL WINAPI InitializeTouchInjection(UINT32,DWORD);
WINUSERAPI BOOL WINAPI InjectSyntheticPointerInput(HSYNTHETICPOINTERDEVICE,const POINTER_TYPE_INFO*,UINT32);
WINUSERAPI BOOL WINAPI InjectTouchInput(UINT32,const POINTER_TOUCH_INFO*);
WINUSERAPI BOOL WINAPI InSendMessage(void);
WINUSERAPI DWORD WINAPI InSendMessageEx(LPVOID);
WINUSERAPI BOOL WINAPI InsertMenuA(HMENU,UINT,UINT,UINT_PTR,LPCSTR);
@ -3986,6 +4333,7 @@ WINUSERAPI BOOL WINAPI IsGUIThread(BOOL);
WINUSERAPI BOOL WINAPI IsHungAppWindow(HWND);
WINUSERAPI BOOL WINAPI IsIconic(HWND);
WINUSERAPI BOOL WINAPI IsMenu(HMENU);
WINUSERAPI BOOL WINAPI IsMouseInPointerEnabled(void);
WINUSERAPI BOOL WINAPI IsProcessDPIAware(void);
WINUSERAPI BOOL WINAPI IsTouchWindow(HWND,PULONG);
WINUSERAPI BOOL WINAPI IsValidDpiAwarenessContext(DPI_AWARENESS_CONTEXT);
@ -4080,6 +4428,7 @@ WINUSERAPI HWINSTA WINAPI OpenWindowStationA(LPCSTR,BOOL,ACCESS_MASK);
WINUSERAPI HWINSTA WINAPI OpenWindowStationW(LPCWSTR,BOOL,ACCESS_MASK);
#define OpenWindowStation WINELIB_NAME_AW(OpenWindowStation)
WINUSERAPI BOOL WINAPI PaintDesktop(HDC);
WINUSERAPI LRESULT WINAPI PackTouchHitTestingProximityEvaluation(const TOUCH_HIT_TESTING_INPUT*,const TOUCH_HIT_TESTING_PROXIMITY_EVALUATION*);
WINUSERAPI BOOL WINAPI PeekMessageA(LPMSG,HWND,UINT,UINT,UINT);
WINUSERAPI BOOL WINAPI PeekMessageW(LPMSG,HWND,UINT,UINT,UINT);
#define PeekMessage WINELIB_NAME_AW(PeekMessage)
@ -4119,10 +4468,13 @@ WINUSERAPI HDEVNOTIFY WINAPI RegisterDeviceNotificationW(HANDLE,LPVOID,DWORD);
#define RegisterDeviceNotification WINELIB_NAME_AW(RegisterDeviceNotification)
WINUSERAPI BOOL WINAPI RegisterHotKey(HWND,INT,UINT,UINT);
WINUSERAPI BOOL WINAPI RegisterPointerDeviceNotifications(HWND,BOOL);
WINUSERAPI BOOL WINAPI RegisterPointerInputTarget(HWND,POINTER_INPUT_TYPE);
WINUSERAPI BOOL WINAPI RegisterPointerInputTargetEx(HWND,POINTER_INPUT_TYPE,BOOL);
WINUSERAPI HPOWERNOTIFY WINAPI RegisterPowerSettingNotification(HANDLE,LPCGUID,DWORD);
WINUSERAPI BOOL WINAPI RegisterRawInputDevices(const RAWINPUTDEVICE *,UINT,UINT);
WINUSERAPI BOOL WINAPI RegisterShellHookWindow(HWND);
WINUSERAPI HPOWERNOTIFY WINAPI RegisterSuspendResumeNotification(HANDLE,DWORD);
WINUSERAPI BOOL WINAPI RegisterTouchHitTestingWindow(HWND,ULONG);
WINUSERAPI BOOL WINAPI RegisterTouchWindow(HWND,ULONG);
WINUSERAPI UINT WINAPI RegisterWindowMessageA(LPCSTR);
WINUSERAPI UINT WINAPI RegisterWindowMessageW(LPCWSTR);
@ -4227,6 +4579,7 @@ WINUSERAPI BOOL WINAPI SetUserObjectInformationW(HANDLE,INT,LPVOID,DWORD)
WINUSERAPI BOOL WINAPI SetUserObjectSecurity(HANDLE,PSECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
WINUSERAPI BOOL WINAPI SetWindowContextHelpId(HWND,DWORD);
WINUSERAPI BOOL WINAPI SetWindowDisplayAffinity(HWND,DWORD);
WINUSERAPI BOOL WINAPI SetWindowFeedbackSetting(HWND,FEEDBACK_TYPE,DWORD,UINT32,const void*);
WINUSERAPI LONG WINAPI SetWindowLongA(HWND,INT,LONG);
WINUSERAPI LONG WINAPI SetWindowLongW(HWND,INT,LONG);
#define SetWindowLong WINELIB_NAME_AW(SetWindowLong)
@ -4260,6 +4613,7 @@ WINUSERAPI BOOL WINAPI ShowWindow(HWND,INT);
WINUSERAPI BOOL WINAPI ShowWindowAsync(HWND,INT);
WINUSERAPI BOOL WINAPI ShutdownBlockReasonCreate(HWND,LPCWSTR);
WINUSERAPI BOOL WINAPI ShutdownBlockReasonDestroy(HWND);
WINUSERAPI BOOL WINAPI SkipPointerFrameMessages(UINT32);
WINUSERAPI BOOL WINAPI SubtractRect(LPRECT,const RECT*,const RECT*);
WINUSERAPI BOOL WINAPI SwapMouseButton(BOOL);
WINUSERAPI BOOL WINAPI SwitchDesktop(HDESK);
@ -4294,6 +4648,8 @@ WINUSERAPI BOOL WINAPI UnregisterClassW(LPCWSTR,HINSTANCE);
#define UnregisterClass WINELIB_NAME_AW(UnregisterClass)
WINUSERAPI BOOL WINAPI UnregisterDeviceNotification(HDEVNOTIFY);
WINUSERAPI BOOL WINAPI UnregisterHotKey(HWND,INT);
WINUSERAPI BOOL WINAPI UnregisterPointerInputTarget(HWND,POINTER_INPUT_TYPE);
WINUSERAPI BOOL WINAPI UnregisterPointerInputTargetEx(HWND,POINTER_INPUT_TYPE);
WINUSERAPI BOOL WINAPI UnregisterPowerSettingNotification(HPOWERNOTIFY);
WINUSERAPI BOOL WINAPI UnregisterSuspendResumeNotification(HPOWERNOTIFY);
WINUSERAPI BOOL WINAPI UnregisterTouchWindow(HWND);