mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-01-28 22:04:43 -08:00
user32-rawinput-mouse: Fix some dependencies.
This commit is contained in:
parent
4d01e48843
commit
f23b6cb7dc
@ -1,8 +1,8 @@
|
||||
From 055edbb9f2cdf23160fa9be1d7f597ec9935c19c Mon Sep 17 00:00:00 2001
|
||||
From 997461625f8169228a34358a6908ff24b1d4f602 Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <z.figura12@gmail.com>
|
||||
Date: Mon, 13 Aug 2018 21:35:06 -0500
|
||||
Subject: [PATCH 79/83] ntdll, server: Revert to old implementation of hung
|
||||
queue detection.
|
||||
Subject: [PATCH] ntdll, server: Revert to old implementation of hung queue
|
||||
detection.
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
@ -22,7 +22,7 @@ critical code that this patchset was written for.
|
||||
3 files changed, 73 insertions(+), 21 deletions(-)
|
||||
|
||||
diff --git a/dlls/ntdll/esync.c b/dlls/ntdll/esync.c
|
||||
index b84b7b83c..501175c1d 100644
|
||||
index ea4654d1f13..4ffbc4bd25e 100644
|
||||
--- a/dlls/ntdll/esync.c
|
||||
+++ b/dlls/ntdll/esync.c
|
||||
@@ -831,8 +831,8 @@ static void update_grabbed_object( struct esync *obj )
|
||||
@ -59,7 +59,7 @@ index b84b7b83c..501175c1d 100644
|
||||
}
|
||||
|
||||
if (has_esync && has_server)
|
||||
@@ -1282,6 +1271,44 @@ userapc:
|
||||
@@ -1283,6 +1272,44 @@ userapc:
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -105,10 +105,10 @@ index b84b7b83c..501175c1d 100644
|
||||
const LARGE_INTEGER *timeout )
|
||||
{
|
||||
diff --git a/server/protocol.def b/server/protocol.def
|
||||
index dbb8770df..fb7f1ad1e 100644
|
||||
index 7082fee04b5..7078c33b94b 100644
|
||||
--- a/server/protocol.def
|
||||
+++ b/server/protocol.def
|
||||
@@ -4078,7 +4078,11 @@ struct handle_info
|
||||
@@ -4077,7 +4077,11 @@ struct handle_info
|
||||
|
||||
/* Retrieve the fd to wait on for user APCs. */
|
||||
@REQ(get_esync_apc_fd)
|
||||
@ -122,7 +122,7 @@ index dbb8770df..fb7f1ad1e 100644
|
||||
|
||||
enum esync_type
|
||||
diff --git a/server/queue.c b/server/queue.c
|
||||
index 174a4ac09..56fa4d98c 100644
|
||||
index b6ed2478c6e..5eb1a046f7b 100644
|
||||
--- a/server/queue.c
|
||||
+++ b/server/queue.c
|
||||
@@ -126,6 +126,7 @@ struct msg_queue
|
||||
@ -177,9 +177,9 @@ index 174a4ac09..56fa4d98c 100644
|
||||
|
||||
if (!(msg = mem_alloc( sizeof(*msg) ))) return 0;
|
||||
|
||||
@@ -3289,3 +3299,14 @@ DECL_HANDLER(update_rawinput_devices)
|
||||
e = find_rawinput_device( 1, 6 );
|
||||
current->process->rawinput_kbd = e ? &e->device : NULL;
|
||||
@@ -3383,3 +3393,14 @@ DECL_HANDLER(get_rawinput_devices)
|
||||
|
||||
set_reply_data_ptr( devices, device_count * sizeof (*devices) );
|
||||
}
|
||||
+
|
||||
+DECL_HANDLER(esync_msgwait)
|
||||
@ -193,5 +193,5 @@ index 174a4ac09..56fa4d98c 100644
|
||||
+ set_event( current->process->idle_event );
|
||||
+}
|
||||
--
|
||||
2.20.1
|
||||
2.26.0
|
||||
|
||||
|
@ -10,3 +10,4 @@ Depends: ntdll-User_Shared_Data
|
||||
Depends: advapi32-Token_Integrity_Level
|
||||
Depends: ntdll-Junction_Points
|
||||
Depends: kernel32-K32GetPerformanceInfo
|
||||
Depends: user32-rawinput-mouse
|
@ -1628,13 +1628,6 @@ if test "$enable_user32_rawinput_nolegacy" -eq 1; then
|
||||
enable_user32_rawinput_mouse=1
|
||||
fi
|
||||
|
||||
if test "$enable_user32_rawinput_mouse" -eq 1; then
|
||||
if test "$enable_winex11_drv_mouse_coorrds" -gt 1; then
|
||||
abort "Patchset winex11.drv-mouse-coorrds disabled, but user32-rawinput-mouse depends on that."
|
||||
fi
|
||||
enable_winex11_drv_mouse_coorrds=1
|
||||
fi
|
||||
|
||||
if test "$enable_stdole32_tlb_SLTG_Typelib" -eq 1; then
|
||||
if test "$enable_widl_SLTG_Typelib_Support" -gt 1; then
|
||||
abort "Patchset widl-SLTG_Typelib_Support disabled, but stdole32.tlb-SLTG_Typelib depends on that."
|
||||
@ -1840,6 +1833,9 @@ if test "$enable_eventfd_synchronization" -eq 1; then
|
||||
if test "$enable_server_Shared_Memory" -gt 1; then
|
||||
abort "Patchset server-Shared_Memory disabled, but eventfd_synchronization depends on that."
|
||||
fi
|
||||
if test "$enable_user32_rawinput_mouse" -gt 1; then
|
||||
abort "Patchset user32-rawinput-mouse disabled, but eventfd_synchronization depends on that."
|
||||
fi
|
||||
if test "$enable_ws2_32_WSACleanup" -gt 1; then
|
||||
abort "Patchset ws2_32-WSACleanup disabled, but eventfd_synchronization depends on that."
|
||||
fi
|
||||
@ -1851,9 +1847,21 @@ if test "$enable_eventfd_synchronization" -eq 1; then
|
||||
enable_ntdll_User_Shared_Data=1
|
||||
enable_server_Realtime_Priority=1
|
||||
enable_server_Shared_Memory=1
|
||||
enable_user32_rawinput_mouse=1
|
||||
enable_ws2_32_WSACleanup=1
|
||||
fi
|
||||
|
||||
if test "$enable_user32_rawinput_mouse" -eq 1; then
|
||||
if test "$enable_loader_KeyboardLayouts" -gt 1; then
|
||||
abort "Patchset loader-KeyboardLayouts disabled, but user32-rawinput-mouse depends on that."
|
||||
fi
|
||||
if test "$enable_winex11_drv_mouse_coorrds" -gt 1; then
|
||||
abort "Patchset winex11.drv-mouse-coorrds disabled, but user32-rawinput-mouse depends on that."
|
||||
fi
|
||||
enable_loader_KeyboardLayouts=1
|
||||
enable_winex11_drv_mouse_coorrds=1
|
||||
fi
|
||||
|
||||
if test "$enable_server_Shared_Memory" -eq 1; then
|
||||
if test "$enable_ntdll_Threading" -gt 1; then
|
||||
abort "Patchset ntdll-Threading disabled, but server-Shared_Memory depends on that."
|
||||
@ -3549,6 +3557,84 @@ if test "$enable_server_Shared_Memory" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset loader-KeyboardLayouts
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#47439] loader: Add Keyboard Layouts registry enteries.
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/user32/driver.c, dlls/user32/tests/input.c, loader/wine.inf.in
|
||||
# |
|
||||
if test "$enable_loader_KeyboardLayouts" -eq 1; then
|
||||
patch_apply loader-KeyboardLayouts/0001-loader-Add-Keyboard-Layouts-registry-enteries.patch
|
||||
patch_apply loader-KeyboardLayouts/0002-user32-Improve-GetKeyboardLayoutList.patch
|
||||
(
|
||||
printf '%s\n' '+ { "Alistair Leslie-Hughes", "loader: Add Keyboard Layouts registry enteries.", 1 },';
|
||||
printf '%s\n' '+ { "Alistair Leslie-Hughes", "user32: Improve GetKeyboardLayoutList.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset winex11.drv-mouse-coorrds
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#46309] winex11.drv: Use root-relative coordinates for events, if possible.
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/winex11.drv/mouse.c
|
||||
# |
|
||||
if test "$enable_winex11_drv_mouse_coorrds" -eq 1; then
|
||||
patch_apply winex11.drv-mouse-coorrds/0001-winex11.drv-mouse-Use-root-relative-coordinates-for-ev.patch
|
||||
(
|
||||
printf '%s\n' '+ { "Gabriel Ivăncescu", "winex11.drv/mouse: Use root-relative coordinates for events, if possible.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset user32-rawinput-mouse
|
||||
# |
|
||||
# | This patchset has the following (direct or indirect) dependencies:
|
||||
# | * loader-KeyboardLayouts, winex11.drv-mouse-coorrds
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#42631] Mouse drift, jump or don't react to small slow movements in Unity-engine games and Fallout 4 (partly fixed in
|
||||
# | Unity games, have walkaround in Fallout4 )
|
||||
# | * [#42675] Overwatch: Phantom mouse input / view pulled up to ceiling
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/dinput/device_private.h, dlls/dinput/dinput_main.c, dlls/dinput/mouse.c, dlls/dinput8/tests/device.c,
|
||||
# | dlls/user32/input.c, dlls/user32/rawinput.c, dlls/user32/tests/input.c, dlls/user32/user32.spec,
|
||||
# | dlls/wineandroid.drv/keyboard.c, dlls/wineandroid.drv/window.c, dlls/winemac.drv/ime.c, dlls/winemac.drv/keyboard.c,
|
||||
# | dlls/winemac.drv/mouse.c, dlls/winex11.drv/event.c, dlls/winex11.drv/keyboard.c, dlls/winex11.drv/mouse.c,
|
||||
# | dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c, include/winuser.h, server/protocol.def, server/queue.c
|
||||
# |
|
||||
if test "$enable_user32_rawinput_mouse" -eq 1; then
|
||||
patch_apply user32-rawinput-mouse/0001-user32-tests-Add-rawinput-test-for-ClipCursor-intera.patch
|
||||
patch_apply user32-rawinput-mouse/0002-user32-tests-Add-rawinput-test-for-cross-thread-inte.patch
|
||||
patch_apply user32-rawinput-mouse/0003-user32-tests-Add-rawinput-test-for-cross-process-int.patch
|
||||
patch_apply user32-rawinput-mouse/0004-server-Add-send_hardware_message-flags-for-rawinput-.patch
|
||||
patch_apply user32-rawinput-mouse/0005-server-Broadcast-rawinput-message-if-request-flag-is.patch
|
||||
patch_apply user32-rawinput-mouse/0006-user32-Add-__wine_send_input-flags-to-hint-raw-input.patch
|
||||
patch_apply user32-rawinput-mouse/0007-winex11.drv-Advertise-XInput2-version-2.1-support.patch
|
||||
patch_apply user32-rawinput-mouse/0008-winex11.drv-Keep-track-of-pointer-and-device-button-.patch
|
||||
patch_apply user32-rawinput-mouse/0009-winex11.drv-Listen-to-RawMotion-and-RawButton-events.patch
|
||||
patch_apply user32-rawinput-mouse/0010-user32-Implement-GetRegisteredRawInputDevices.patch
|
||||
patch_apply user32-rawinput-mouse/0011-dinput8-Add-support-for-dinput-devices-that-use-raw-.patch
|
||||
patch_apply user32-rawinput-mouse/0012-dinput8-Use-raw-input-interface-for-dinput8-mouse-de.patch
|
||||
(
|
||||
printf '%s\n' '+ { "Rémi Bernon", "user32/tests: Add rawinput test for ClipCursor interactions.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "user32/tests: Add rawinput test for cross-thread interactions.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "user32/tests: Add rawinput test for cross-process interactions.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "server: Add send_hardware_message flags for rawinput translation.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "server: Broadcast rawinput message if request flag is SEND_HWMSG_RAWINPUT.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "user32: Add __wine_send_input flags to hint raw input translation.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "winex11.drv: Advertise XInput2 version 2.1 support.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "winex11.drv: Keep track of pointer and device button mappings.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "winex11.drv: Listen to RawMotion and RawButton* events in the desktop thread.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "user32: Implement GetRegisteredRawInputDevices.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "dinput8: Add support for dinput devices that use raw input interface.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "dinput8: Use raw input interface for dinput8 mouse device.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset ws2_32-WSACleanup
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
@ -3573,7 +3659,8 @@ fi
|
||||
# | * Staging, advapi32-CreateRestrictedToken, advapi32-Token_Integrity_Level, kernel32-K32GetPerformanceInfo, ntdll-
|
||||
# | Junction_Points, ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-User_Shared_Data, winebuild-Fake_Dlls, ntdll-
|
||||
# | RtlCreateUserThread, ntdll-SystemRoot_Symlink, server-Realtime_Priority, ntdll-Threading, server-Key_State, server-
|
||||
# | PeekMessage, server-Signal_Thread, server-Shared_Memory, ws2_32-WSACleanup
|
||||
# | PeekMessage, server-Signal_Thread, server-Shared_Memory, loader-KeyboardLayouts, winex11.drv-mouse-coorrds, user32
|
||||
# | -rawinput-mouse, ws2_32-WSACleanup
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#36692] Many multi-threaded applications have poor performance due to heavy use of synchronization primitives
|
||||
@ -4159,23 +4246,6 @@ if test "$enable_libs_Debug_Channel" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset loader-KeyboardLayouts
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#47439] loader: Add Keyboard Layouts registry enteries.
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/user32/driver.c, dlls/user32/tests/input.c, loader/wine.inf.in
|
||||
# |
|
||||
if test "$enable_loader_KeyboardLayouts" -eq 1; then
|
||||
patch_apply loader-KeyboardLayouts/0001-loader-Add-Keyboard-Layouts-registry-enteries.patch
|
||||
patch_apply loader-KeyboardLayouts/0002-user32-Improve-GetKeyboardLayoutList.patch
|
||||
(
|
||||
printf '%s\n' '+ { "Alistair Leslie-Hughes", "loader: Add Keyboard Layouts registry enteries.", 1 },';
|
||||
printf '%s\n' '+ { "Alistair Leslie-Hughes", "user32: Improve GetKeyboardLayoutList.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset mmsystem.dll16-MIDIHDR_Refcount
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
@ -5306,7 +5376,8 @@ fi
|
||||
# | * Staging, advapi32-CreateRestrictedToken, advapi32-Token_Integrity_Level, kernel32-K32GetPerformanceInfo, ntdll-
|
||||
# | Junction_Points, ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-User_Shared_Data, winebuild-Fake_Dlls, ntdll-
|
||||
# | RtlCreateUserThread, ntdll-SystemRoot_Symlink, server-Realtime_Priority, ntdll-Threading, server-Key_State, server-
|
||||
# | PeekMessage, server-Signal_Thread, server-Shared_Memory, ws2_32-WSACleanup, eventfd_synchronization
|
||||
# | PeekMessage, server-Signal_Thread, server-Shared_Memory, loader-KeyboardLayouts, winex11.drv-mouse-coorrds, user32
|
||||
# | -rawinput-mouse, ws2_32-WSACleanup, eventfd_synchronization
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#46967] GOG Galaxy doesn't run in virtual desktop.
|
||||
@ -6115,71 +6186,10 @@ if test "$enable_user32_msgbox_Support_WM_COPY_mesg" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset winex11.drv-mouse-coorrds
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#46309] winex11.drv: Use root-relative coordinates for events, if possible.
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/winex11.drv/mouse.c
|
||||
# |
|
||||
if test "$enable_winex11_drv_mouse_coorrds" -eq 1; then
|
||||
patch_apply winex11.drv-mouse-coorrds/0001-winex11.drv-mouse-Use-root-relative-coordinates-for-ev.patch
|
||||
(
|
||||
printf '%s\n' '+ { "Gabriel Ivăncescu", "winex11.drv/mouse: Use root-relative coordinates for events, if possible.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset user32-rawinput-mouse
|
||||
# |
|
||||
# | This patchset has the following (direct or indirect) dependencies:
|
||||
# | * winex11.drv-mouse-coorrds
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#42631] Mouse drift, jump or don't react to small slow movements in Unity-engine games and Fallout 4 (partly fixed in
|
||||
# | Unity games, have walkaround in Fallout4 )
|
||||
# | * [#42675] Overwatch: Phantom mouse input / view pulled up to ceiling
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/dinput/device_private.h, dlls/dinput/dinput_main.c, dlls/dinput/mouse.c, dlls/dinput8/tests/device.c,
|
||||
# | dlls/user32/input.c, dlls/user32/rawinput.c, dlls/user32/tests/input.c, dlls/user32/user32.spec,
|
||||
# | dlls/wineandroid.drv/keyboard.c, dlls/wineandroid.drv/window.c, dlls/winemac.drv/ime.c, dlls/winemac.drv/keyboard.c,
|
||||
# | dlls/winemac.drv/mouse.c, dlls/winex11.drv/event.c, dlls/winex11.drv/keyboard.c, dlls/winex11.drv/mouse.c,
|
||||
# | dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c, include/winuser.h, server/protocol.def, server/queue.c
|
||||
# |
|
||||
if test "$enable_user32_rawinput_mouse" -eq 1; then
|
||||
patch_apply user32-rawinput-mouse/0001-user32-tests-Add-rawinput-test-for-ClipCursor-intera.patch
|
||||
patch_apply user32-rawinput-mouse/0002-user32-tests-Add-rawinput-test-for-cross-thread-inte.patch
|
||||
patch_apply user32-rawinput-mouse/0003-user32-tests-Add-rawinput-test-for-cross-process-int.patch
|
||||
patch_apply user32-rawinput-mouse/0004-server-Add-send_hardware_message-flags-for-rawinput-.patch
|
||||
patch_apply user32-rawinput-mouse/0005-server-Broadcast-rawinput-message-if-request-flag-is.patch
|
||||
patch_apply user32-rawinput-mouse/0006-user32-Add-__wine_send_input-flags-to-hint-raw-input.patch
|
||||
patch_apply user32-rawinput-mouse/0007-winex11.drv-Advertise-XInput2-version-2.1-support.patch
|
||||
patch_apply user32-rawinput-mouse/0008-winex11.drv-Keep-track-of-pointer-and-device-button-.patch
|
||||
patch_apply user32-rawinput-mouse/0009-winex11.drv-Listen-to-RawMotion-and-RawButton-events.patch
|
||||
patch_apply user32-rawinput-mouse/0010-user32-Implement-GetRegisteredRawInputDevices.patch
|
||||
patch_apply user32-rawinput-mouse/0011-dinput8-Add-support-for-dinput-devices-that-use-raw-.patch
|
||||
patch_apply user32-rawinput-mouse/0012-dinput8-Use-raw-input-interface-for-dinput8-mouse-de.patch
|
||||
(
|
||||
printf '%s\n' '+ { "Rémi Bernon", "user32/tests: Add rawinput test for ClipCursor interactions.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "user32/tests: Add rawinput test for cross-thread interactions.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "user32/tests: Add rawinput test for cross-process interactions.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "server: Add send_hardware_message flags for rawinput translation.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "server: Broadcast rawinput message if request flag is SEND_HWMSG_RAWINPUT.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "user32: Add __wine_send_input flags to hint raw input translation.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "winex11.drv: Advertise XInput2 version 2.1 support.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "winex11.drv: Keep track of pointer and device button mappings.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "winex11.drv: Listen to RawMotion and RawButton* events in the desktop thread.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "user32: Implement GetRegisteredRawInputDevices.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "dinput8: Add support for dinput devices that use raw input interface.", 1 },';
|
||||
printf '%s\n' '+ { "Rémi Bernon", "dinput8: Use raw input interface for dinput8 mouse device.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset user32-rawinput-nolegacy
|
||||
# |
|
||||
# | This patchset has the following (direct or indirect) dependencies:
|
||||
# | * winex11.drv-mouse-coorrds, user32-rawinput-mouse
|
||||
# | * loader-KeyboardLayouts, winex11.drv-mouse-coorrds, user32-rawinput-mouse
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/dinput/dinput_main.c, dlls/dinput8/tests/device.c, dlls/user32/rawinput.c, server/queue.c
|
||||
@ -6202,7 +6212,7 @@ fi
|
||||
# Patchset user32-rawinput-hid
|
||||
# |
|
||||
# | This patchset has the following (direct or indirect) dependencies:
|
||||
# | * winex11.drv-mouse-coorrds, user32-rawinput-mouse, user32-rawinput-nolegacy
|
||||
# | * loader-KeyboardLayouts, winex11.drv-mouse-coorrds, user32-rawinput-mouse, user32-rawinput-nolegacy
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/hidclass.sys/device.c, dlls/hidclass.sys/hid.h, dlls/hidclass.sys/pnp.c, dlls/user32/message.c,
|
||||
@ -6226,7 +6236,7 @@ fi
|
||||
# Patchset user32-rawinput-mouse-experimental
|
||||
# |
|
||||
# | This patchset has the following (direct or indirect) dependencies:
|
||||
# | * winex11.drv-mouse-coorrds, user32-rawinput-mouse, user32-rawinput-nolegacy
|
||||
# | * loader-KeyboardLayouts, winex11.drv-mouse-coorrds, user32-rawinput-mouse, user32-rawinput-nolegacy
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#45882] - Raw Input should use untransformed mouse values (affects Overwatch, several Source games).
|
||||
@ -7225,8 +7235,8 @@ fi
|
||||
# | * Staging, advapi32-CreateRestrictedToken, advapi32-Token_Integrity_Level, kernel32-K32GetPerformanceInfo, ntdll-
|
||||
# | Junction_Points, ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-User_Shared_Data, winebuild-Fake_Dlls, ntdll-
|
||||
# | RtlCreateUserThread, ntdll-SystemRoot_Symlink, server-Realtime_Priority, ntdll-Threading, server-Key_State, server-
|
||||
# | PeekMessage, server-Signal_Thread, server-Shared_Memory, ws2_32-WSACleanup, eventfd_synchronization, server-
|
||||
# | Desktop_Refcount
|
||||
# | PeekMessage, server-Signal_Thread, server-Shared_Memory, loader-KeyboardLayouts, winex11.drv-mouse-coorrds, user32
|
||||
# | -rawinput-mouse, ws2_32-WSACleanup, eventfd_synchronization, server-Desktop_Refcount
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c, include/winsock.h, server/protocol.def, server/sock.c
|
||||
|
@ -1,7 +1,7 @@
|
||||
From d4dd0d48cec74bd2185eae5a6020c026040c1319 Mon Sep 17 00:00:00 2001
|
||||
From 683426b80996fab19231f272ce60184f0688f806 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Mon, 26 Aug 2019 16:06:58 +0200
|
||||
Subject: [PATCH 10/12] user32: Implement GetRegisteredRawInputDevices.
|
||||
Subject: [PATCH] user32: Implement GetRegisteredRawInputDevices.
|
||||
|
||||
---
|
||||
dlls/dinput8/tests/device.c | 13 ---------
|
||||
@ -11,10 +11,10 @@ Subject: [PATCH 10/12] user32: Implement GetRegisteredRawInputDevices.
|
||||
4 files changed, 83 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/dlls/dinput8/tests/device.c b/dlls/dinput8/tests/device.c
|
||||
index bec2a6b863c..45fc2889066 100644
|
||||
index f3e7b542355..72a59878d8a 100644
|
||||
--- a/dlls/dinput8/tests/device.c
|
||||
+++ b/dlls/dinput8/tests/device.c
|
||||
@@ -652,7 +652,6 @@ static void test_mouse_keyboard(void)
|
||||
@@ -602,7 +602,6 @@ static void test_mouse_keyboard(void)
|
||||
|
||||
raw_devices_count = ARRAY_SIZE(raw_devices);
|
||||
GetRegisteredRawInputDevices(NULL, &raw_devices_count, sizeof(RAWINPUTDEVICE));
|
||||
@ -22,7 +22,7 @@ index bec2a6b863c..45fc2889066 100644
|
||||
ok(raw_devices_count == 0, "Unexpected raw devices registered: %d\n", raw_devices_count);
|
||||
|
||||
hr = IDirectInputDevice8_Acquire(di_keyboard);
|
||||
@@ -674,7 +673,6 @@ static void test_mouse_keyboard(void)
|
||||
@@ -624,7 +623,6 @@ static void test_mouse_keyboard(void)
|
||||
ok(SUCCEEDED(hr), "IDirectInputDevice8_Acquire failed: %08x\n", hr);
|
||||
raw_devices_count = ARRAY_SIZE(raw_devices);
|
||||
GetRegisteredRawInputDevices(NULL, &raw_devices_count, sizeof(RAWINPUTDEVICE));
|
||||
@ -30,7 +30,7 @@ index bec2a6b863c..45fc2889066 100644
|
||||
ok(raw_devices_count == 0, "Unexpected raw devices registered: %d\n", raw_devices_count);
|
||||
|
||||
if (raw_devices[0].hwndTarget != NULL)
|
||||
@@ -712,7 +710,6 @@ static void test_mouse_keyboard(void)
|
||||
@@ -662,7 +660,6 @@ static void test_mouse_keyboard(void)
|
||||
ok(SUCCEEDED(hr), "IDirectInputDevice8_Acquire failed: %08x\n", hr);
|
||||
raw_devices_count = ARRAY_SIZE(raw_devices);
|
||||
GetRegisteredRawInputDevices(NULL, &raw_devices_count, sizeof(RAWINPUTDEVICE));
|
||||
@ -38,7 +38,7 @@ index bec2a6b863c..45fc2889066 100644
|
||||
ok(raw_devices_count == 0, "Unexpected raw devices registered: %d\n", raw_devices_count);
|
||||
|
||||
/* expect dinput8 to take over any activated raw input devices */
|
||||
@@ -739,26 +736,18 @@ static void test_mouse_keyboard(void)
|
||||
@@ -689,26 +686,18 @@ static void test_mouse_keyboard(void)
|
||||
raw_devices_count = ARRAY_SIZE(raw_devices);
|
||||
memset(raw_devices, 0, sizeof(raw_devices));
|
||||
hr = GetRegisteredRawInputDevices(raw_devices, &raw_devices_count, sizeof(RAWINPUTDEVICE));
|
||||
@ -65,7 +65,7 @@ index bec2a6b863c..45fc2889066 100644
|
||||
ok(raw_devices[2].usUsage == 6, "Unexpected raw device usage: %x\n", raw_devices[1].usUsage);
|
||||
todo_wine
|
||||
ok(raw_devices[2].dwFlags == RIDEV_INPUTSINK, "Unexpected raw device flags: %x\n", raw_devices[1].dwFlags);
|
||||
@@ -777,12 +766,10 @@ static void test_mouse_keyboard(void)
|
||||
@@ -727,12 +716,10 @@ static void test_mouse_keyboard(void)
|
||||
hr = GetRegisteredRawInputDevices(raw_devices, &raw_devices_count, sizeof(RAWINPUTDEVICE));
|
||||
todo_wine
|
||||
ok(hr == 1, "GetRegisteredRawInputDevices returned %d, raw_devices_count: %d\n", hr, raw_devices_count);
|
||||
@ -151,10 +151,10 @@ index 85ff0c5e809..3792360b057 100644
|
||||
|
||||
|
||||
diff --git a/server/protocol.def b/server/protocol.def
|
||||
index 9f9f9197134..d37dceba40c 100644
|
||||
index d74400f0eec..06620b4f8d4 100644
|
||||
--- a/server/protocol.def
|
||||
+++ b/server/protocol.def
|
||||
@@ -3986,6 +3986,12 @@ struct handle_info
|
||||
@@ -3879,6 +3879,12 @@ struct handle_info
|
||||
VARARG(devices,rawinput_devices);
|
||||
@END
|
||||
|
||||
@ -168,12 +168,12 @@ index 9f9f9197134..d37dceba40c 100644
|
||||
/* Retrieve the suspended context of a thread */
|
||||
@REQ(get_suspend_context)
|
||||
diff --git a/server/queue.c b/server/queue.c
|
||||
index 2bdd099d1bb..8a1bbfff5aa 100644
|
||||
index 05c9481f8a9..6e5022b2311 100644
|
||||
--- a/server/queue.c
|
||||
+++ b/server/queue.c
|
||||
@@ -3382,3 +3382,27 @@ DECL_HANDLER(esync_msgwait)
|
||||
if (current->process->idle_event && !(queue->wake_mask & QS_SMRESULT))
|
||||
set_event( current->process->idle_event );
|
||||
@@ -3193,3 +3193,27 @@ DECL_HANDLER(update_rawinput_devices)
|
||||
e = find_rawinput_device( 1, 6 );
|
||||
current->process->rawinput_kbd = e ? &e->device : NULL;
|
||||
}
|
||||
+
|
||||
+DECL_HANDLER(get_rawinput_devices)
|
||||
@ -200,5 +200,5 @@ index 2bdd099d1bb..8a1bbfff5aa 100644
|
||||
+ set_reply_data_ptr( devices, device_count * sizeof (*devices) );
|
||||
+}
|
||||
--
|
||||
2.24.1
|
||||
2.26.0
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
Fixes: [42631] Mouse drift, jump or don't react to small slow movements in Unity-engine games and Fallout 4 (partly fixed in Unity games, have walkaround in Fallout4 )
|
||||
Fixes: [42675] Overwatch: Phantom mouse input / view pulled up to ceiling
|
||||
Depends: winex11.drv-mouse-coorrds
|
||||
Depends: loader-KeyboardLayouts
|
||||
|
Loading…
x
Reference in New Issue
Block a user