Rebase against 5b4009e8c27c16bdb9a5638c316a72aaee219158.

This commit is contained in:
Alistair Leslie-Hughes
2022-04-08 09:08:08 +10:00
parent 8647380744
commit f0719cee76
6 changed files with 74 additions and 169 deletions

View File

@@ -1,4 +1,4 @@
From 1687b01c234b57803be7099f81ccce2136642670 Mon Sep 17 00:00:00 2001
From 509c461b58dce1eeaa6a9a3c572dfb6031ed3b75 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
Date: Thu, 19 Dec 2019 22:34:44 +0100
Subject: [PATCH] winex11.drv: Keep track of pointer and device button
@@ -16,7 +16,7 @@ Original patch by Andrew Eikum <aeikum@codeweavers.com>.
4 files changed, 106 insertions(+), 8 deletions(-)
diff --git a/dlls/winex11.drv/keyboard.c b/dlls/winex11.drv/keyboard.c
index c6eab6f5cfa..1525dac8280 100644
index de849066b95..a65e0ee6441 100644
--- a/dlls/winex11.drv/keyboard.c
+++ b/dlls/winex11.drv/keyboard.c
@@ -1882,13 +1882,24 @@ BOOL X11DRV_MappingNotify( HWND dummy, XEvent *event )
@@ -51,10 +51,10 @@ index c6eab6f5cfa..1525dac8280 100644
}
diff --git a/dlls/winex11.drv/mouse.c b/dlls/winex11.drv/mouse.c
index 9088aada596..6905d0827f8 100644
index ea50c6bfbee..81be9d87862 100644
--- a/dlls/winex11.drv/mouse.c
+++ b/dlls/winex11.drv/mouse.c
@@ -27,6 +27,9 @@
@@ -26,6 +26,9 @@
#include <X11/Xlib.h>
#include <X11/cursorfont.h>
#include <stdarg.h>
@@ -64,7 +64,7 @@ index 9088aada596..6905d0827f8 100644
#ifdef HAVE_X11_EXTENSIONS_XINPUT2_H
#include <X11/extensions/XInput2.h>
#endif
@@ -144,6 +147,14 @@ MAKE_FUNCPTR(XISelectEvents);
@@ -143,6 +146,14 @@ MAKE_FUNCPTR(XISelectEvents);
#undef MAKE_FUNCPTR
#endif
@@ -79,7 +79,7 @@ index 9088aada596..6905d0827f8 100644
/***********************************************************************
* X11DRV_Xcursor_Init
*
@@ -249,6 +260,70 @@ void sync_window_cursor( Window window )
@@ -248,6 +259,70 @@ void sync_window_cursor( Window window )
set_window_cursor( window, cursor );
}
@@ -150,7 +150,7 @@ index 9088aada596..6905d0827f8 100644
#ifdef HAVE_X11_EXTENSIONS_XINPUT2_H
/***********************************************************************
* update_relative_valuators
@@ -1896,6 +1971,8 @@ static BOOL X11DRV_DeviceChanged( XGenericEventCookie *xev )
@@ -1844,6 +1919,8 @@ static BOOL X11DRV_DeviceChanged( XGenericEventCookie *xev )
if (event->reason != XISlaveSwitch) return FALSE;
update_relative_valuators( event->classes, event->num_classes );
@@ -159,7 +159,7 @@ index 9088aada596..6905d0827f8 100644
return TRUE;
}
@@ -1928,13 +2005,12 @@ static BOOL X11DRV_RawMotion( XGenericEventCookie *xev )
@@ -1930,13 +2007,12 @@ static BOOL X11DRV_RawMotion( XGenericEventCookie *xev )
#endif /* HAVE_X11_EXTENSIONS_XINPUT2_H */
@@ -174,7 +174,7 @@ index 9088aada596..6905d0827f8 100644
int event, error;
void *libxi_handle = dlopen( SONAME_LIBXI, RTLD_NOW );
@@ -1950,11 +2026,20 @@ void x11drv_xinput_load(void)
@@ -1952,11 +2028,20 @@ void x11drv_xinput_load(void)
return; \
}
@@ -196,7 +196,7 @@ index 9088aada596..6905d0827f8 100644
xinput2_available = XQueryExtension( gdi_display, "XInputExtension", &xinput2_opcode, &event, &error );
diff --git a/dlls/winex11.drv/x11drv.h b/dlls/winex11.drv/x11drv.h
index 8cddfa05904..b8d1bb100de 100644
index 6db02f5f033..cbd3b240bd4 100644
--- a/dlls/winex11.drv/x11drv.h
+++ b/dlls/winex11.drv/x11drv.h
@@ -698,6 +698,7 @@ extern void retry_grab_clipping_window(void) DECLSPEC_HIDDEN;
@@ -204,14 +204,14 @@ index 8cddfa05904..b8d1bb100de 100644
extern void move_resize_window( HWND hwnd, int dir ) DECLSPEC_HIDDEN;
extern void X11DRV_InitKeyboard( Display *display ) DECLSPEC_HIDDEN;
+extern void X11DRV_InitMouse( Display *display ) DECLSPEC_HIDDEN;
extern DWORD CDECL X11DRV_MsgWaitForMultipleObjectsEx( DWORD count, const HANDLE *handles, DWORD timeout,
DWORD mask, DWORD flags ) DECLSPEC_HIDDEN;
extern DWORD X11DRV_MsgWaitForMultipleObjectsEx( DWORD count, const HANDLE *handles, DWORD timeout,
DWORD mask, DWORD flags ) DECLSPEC_HIDDEN;
diff --git a/dlls/winex11.drv/x11drv_main.c b/dlls/winex11.drv/x11drv_main.c
index d8e2a88c5f6..21437d99c5c 100644
index 036a139da1a..e45d58cd926 100644
--- a/dlls/winex11.drv/x11drv_main.c
+++ b/dlls/winex11.drv/x11drv_main.c
@@ -629,6 +629,7 @@ static BOOL process_attach(void)
@@ -625,6 +625,7 @@ static BOOL process_attach(void)
if (use_xkb) use_xkb = XkbUseExtension( gdi_display, NULL, NULL );
#endif
X11DRV_InitKeyboard( gdi_display );
@@ -220,5 +220,5 @@ index d8e2a88c5f6..21437d99c5c 100644
init_user_driver();
--
2.33.0
2.35.1