Rémi Bernon
0c9cac9547
dinput: Move GetProperty implementation for objects to generic device.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-18 11:11:55 +01:00
Rémi Bernon
3834eaf9bd
dinput: Move SetProperty implementation to the generic device.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-18 11:11:52 +01:00
Rémi Bernon
e7217a3287
dinput: Stub support for the DIPROP_FFGAIN property.
...
Based on a patch from Ivo Ivanov <logos128@gmail.com>.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-17 15:25:33 +01:00
Rémi Bernon
2608a5caa6
dinput: Handle device types and flags directly in EnumDevices.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-16 10:09:07 +01:00
Rémi Bernon
80f4cce671
dinput: Rename SysKeyboardImpl to struct keyboard.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-27 22:40:49 +02:00
Rémi Bernon
dac2e0b187
dinput: Rename IDirectInputDeviceImpl to struct dinput_device.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-27 22:40:49 +02:00
Rémi Bernon
bbff12381e
dinput: Call hid_joystick_enum_device directly in JoyConfig8Impl_GetConfig.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-26 10:39:34 +02:00
Rémi Bernon
a83e6db353
dinput: Call *_create_device directly in IDirectInput7WImpl_CreateDeviceEx.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-26 10:39:34 +02:00
Rémi Bernon
591be9d456
dinput: Call *_enum_device directly in IDirectInputWImpl_EnumDevices.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-26 10:39:34 +02:00
Rémi Bernon
b242273482
dinput: Factor all IDirectInputDevice8W vtables together.
...
And remove "internal" suffix from internal functions.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-22 10:18:30 +02:00
Rémi Bernon
e85a530277
dinput: Cleanup keyboard device enumeration and creation.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-22 10:18:28 +02:00
Rémi Bernon
7c67ebfd56
dinput: Set high DIK bit for extended scancodes.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51910
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-21 20:32:43 +02:00
Rémi Bernon
df08662f84
dinput: Move EnumCreatedEffectObjects checks to device.c.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-21 11:21:35 +02:00
Rémi Bernon
45d4c253de
dinput: Move SendForceFeedbackCommand generic code to device.c.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-21 11:21:32 +02:00
Rémi Bernon
7c4e91f63b
dinput: Move CreateEffect generic implementation to device.c.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-21 11:21:29 +02:00
Rémi Bernon
f54210590f
dinput: Use the internal vtable for GetEffectInfo.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-21 11:21:21 +02:00
Rémi Bernon
7ccf07ae8f
dinput: Add a release callback for internal refcount handling.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-20 16:16:07 +02:00
Rémi Bernon
89c59e77c1
dinput: Factor all GetDeviceState implementations together.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-20 16:16:07 +02:00
Rémi Bernon
aebd03f070
dinput: Factor all Poll implementations together.
...
With a new internal poll callback for mouse and keyboard Wine-specific
message peeking behavior.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-20 16:16:07 +02:00
Rémi Bernon
ec3e51bb10
dinput: Factor object enumeration checks and offset mapping.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-20 16:16:07 +02:00
Rémi Bernon
47a821400a
dinput: Factor all SetProperty implementations together.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-19 10:50:22 +02:00
Rémi Bernon
d94ad65f98
dinput: Use the base device state in the keyboard device.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-19 10:50:20 +02:00
Rémi Bernon
3ec4ae8390
dinput: Factor all GetProperty implementations together.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-19 10:50:13 +02:00
Rémi Bernon
9f493b0ed8
dinput: Factor all GetObjectInfo implementations together.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-18 16:03:42 +02:00
Rémi Bernon
71ecc179aa
dinput: Implement internal enum_objects for the keyboard device.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-18 16:03:39 +02:00
Rémi Bernon
34f66a0cec
dinput: Implement EnumObjects through the internal vtable.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-18 16:03:32 +02:00
Rémi Bernon
77f5edda30
dinput: Factor all (Un)Acquire implementations together.
...
And introduce new internal acquire / unacquire callbacks.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-13 13:05:23 +02:00
Rémi Bernon
18981330c5
dinput: Factor all SetActionMap wrappers together.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-13 13:05:23 +02:00
Rémi Bernon
30ea1876db
dinput: Factor all BuildActionMap wrappers together.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-13 13:05:23 +02:00
Rémi Bernon
daed18a816
dinput: Factor all GetCapabilities implementations together.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-13 13:05:23 +02:00
Rémi Bernon
fc7f430afb
dinput: Factor all GetDeviceInfo implementations together.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-13 13:05:23 +02:00
Rémi Bernon
f5b32121b1
dinput: Use msvcrt memory allocation functions.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-11 10:58:51 +02:00
Rémi Bernon
e4f6ec7d3d
dinput: Build with msvcrt.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-11 10:58:38 +02:00
Rémi Bernon
91d9819c95
dinput: Fire the notification only after all events have been queued.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-17 10:48:34 +02:00
Rémi Bernon
2726644124
dinput: Allocate data format on device creation.
...
It's accessed on Release, and this will make it easier to handle device
creation failure cleanup.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 21:49:09 +02:00
Rémi Bernon
d666aea360
dinput: Remove the need for ANSI enum_device callback.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-31 11:31:28 +02:00
Rémi Bernon
17958bc863
dinput: Factor out device creation interface queries.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-31 11:31:21 +02:00
Rémi Bernon
f3a07c5cae
dinput: Factor out IDirectInputDevice ansi vtable.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-28 21:53:07 +02:00
Rémi Bernon
8d7914962b
dinput: Introduce direct_input_device_alloc helper.
...
To factor out device allocation and initialization.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-28 21:53:07 +02:00
Rémi Bernon
ad8e3727c1
dinput: Make device creation error handling consistent.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-28 21:53:07 +02:00
Rémi Bernon
5f4ee79149
dinput: Factor out IDirectInputDevice_SetActionMap WtoA conversions.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-27 16:14:24 +02:00
Rémi Bernon
8109f8398a
dinput: Factor out IDirectInputDevice_BuildActionMap WtoA conversions.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-27 16:14:19 +02:00
Rémi Bernon
27ea33baf9
dinput: Factor out IDirectInputDevice_GetDeviceInfo WtoA conversions.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-27 16:14:13 +02:00
Rémi Bernon
7713050c77
dinput: Factor out IDirectInputDevice_GetDeviceState WtoA conversions.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-27 16:14:08 +02:00
Rémi Bernon
5eb5f94fc0
dinput: Factor out IDirectInputDevice_GetCapabilities WtoA conversions.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-27 16:14:03 +02:00
Rémi Bernon
08d07c4cc2
dinput: Factor out IDirectInputDevice_GetObjectInfo WtoA conversions.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-26 21:29:37 +02:00
Rémi Bernon
90ef30828e
dinput: Use generic WtoA wrappers when possible.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-25 21:13:01 +02:00
Rémi Bernon
5fe103107a
dinput: Use IDirectInputDevice8W interface consistently.
...
Instead of sometimes using IDirectInputDevice8A.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-25 21:13:01 +02:00
Rémi Bernon
306c40e673
dinput: Use dedicated list for mouse and keyboard.
...
Instead of using function pointer, which is also not very CPU friendly.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 21:23:33 +02:00
Rémi Bernon
26c1131201
dinput: Use a single list for all acquired devices.
...
Instead of going through devices list of dinputs list, and checking
their acquired field, which is not CPU friendly.
This also removes the now unused IDirectInputImpl critical section and
devices list.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 21:23:33 +02:00