Module: wine Branch: refs/heads/master Commit: 14e9ee55ba259830ab91d28364881f31a69917f2 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=14e9ee55ba259830ab91d283...
Author: Christoph Frick frick@sc-networks.de Date: Thu Jul 6 13:12:43 2006 +0200
dinput: Set the amount of POVs in the caps.
---
dlls/dinput/joystick_linuxinput.c | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/dlls/dinput/joystick_linuxinput.c b/dlls/dinput/joystick_linuxinput.c index 3b4a4eb..e89a4b7 100644 --- a/dlls/dinput/joystick_linuxinput.c +++ b/dlls/dinput/joystick_linuxinput.c @@ -973,7 +973,7 @@ static HRESULT WINAPI JoystickAImpl_GetC LPDIDEVCAPS lpDIDevCaps) { JoystickImpl *This = (JoystickImpl *)iface; - int i,axes,buttons; + int i,axes,buttons,povs;
TRACE("%p->(%p)\n",iface,lpDIDevCaps);
@@ -997,12 +997,19 @@ static HRESULT WINAPI JoystickAImpl_GetC for (i=0;i<ABS_MAX;i++) if (test_bit(This->joydev->absbits,i)) axes++; buttons=0; for (i=0;i<KEY_MAX;i++) if (test_bit(This->joydev->keybits,i)) buttons++; + povs=0; + for (i=0; i<4; i++) { + if (test_bit(This->joydev->absbits,ABS_HAT0X+(i<<1)) && test_bit(This->joydev->absbits,ABS_HAT0Y+(i<<1))) { + povs ++; + } + }
if (This->has_ff) lpDIDevCaps->dwFlags |= DIDC_FORCEFEEDBACK;
lpDIDevCaps->dwAxes = axes; lpDIDevCaps->dwButtons = buttons; + lpDIDevCaps->dwPOVs = povs;
return DI_OK; }