Commit graph

60 commits

Author SHA1 Message Date
Unknown W. Brackets
e1e5a8b49b UI: Ignore duplicate axis events.
We already ignore these on Windows, so this makes other platforms follow
the same logic.
2021-05-23 13:21:45 -07:00
Unknown W. Brackets
eca3a405b6 UI: Flip Y analog direction based on config. 2021-04-04 08:39:49 -07:00
Unknown W. Brackets
c9428975fe Windows: Normalize left and right analog stick. 2021-04-04 08:16:26 -07:00
Unknown W. Brackets
2c165c9b6d Windows: Fix improper case or missing includes.
As per mingw errors/warnings.
2021-02-14 10:30:10 -08:00
Unknown W. Brackets
ce8bbfaf54 Windows: Fix some type conversion warnings. 2021-01-01 08:37:32 -08:00
Henrik Rydgård
f01ba6dc84 Move NativeApp.h to Common/System, split into NativeApp.h and System.h
Buildfix
2020-10-04 11:42:16 +02:00
Henrik Rydgård
342ed97291 Move input utilities from native to Common/Input. 2020-10-01 09:42:32 +02:00
Unknown W. Brackets
d30d75ab38 Windows: Check for devices on Windows events only.
A user reported stuttering after the periodic checks, and devices failing
until unplug/replug.  Presumably, this is caused by poor drivers reacting
badly to periodic DirectInput queries, so less queries should help.
2018-11-01 21:42:12 -07:00
Unknown W. Brackets
52e2e0763a Windows: Detect DirectInput devices after launch. 2018-10-08 21:21:37 -07:00
aliaspider
f94e9b1e74 set _WIN32_WINNT to 0x0601 in stdafx.h 2018-03-23 22:54:12 +01:00
Unknown W. Brackets
9e390510df Remove legacy InputState. 2017-03-14 22:07:07 -07:00
Henrik Rydgard
28d8ed5881 Win32: Fix a bunch of little window resizing issues 2015-05-15 18:04:05 +02:00
Josh Palmer
929866edd3 XInput/DInput: Rename settings, fix sensitivity
* Change deadzone inverter naming convention to 'analog mapper'
* Remove hokey mathematics from sensitivity calculations
2015-02-05 06:30:29 +00:00
Josh Palmer
4c6410cd0d DInput/XInput: Further fixes & improvements
* Remove redundant second analog settings for XInput
* Replace DInput circle->square mapping with improved XInput version
2015-02-05 05:48:29 +00:00
Josh Palmer
6856709b1d DInput/XInput: Deadzone fixes & Sensitivity
* DInput Deadzone & Deadzone Inverter now function correctly
* Added analog Sensitivity options to DInput and XInput
2015-02-05 05:30:39 +00:00
Josh Palmer
918b96500c DInput/XInput: Configurable deadzone + inverter
* Add configurable shared deadzone for all DInput axes
* Add configurable separate deadzones for left & right XInput sticks
* Add configurable deadzone inverter for DInput X/Y axes
* Add configurable deadzone inverter for XInput sticks
2015-01-17 21:26:08 +00:00
Unknown W. Brackets
913914a4c1 Fix some type conversion warnings. 2014-06-15 10:01:54 -07:00
Henrik Rydgård
91cb320e6f Merge pull request #6212 from thedax/win32-buildfix
Win32: fix three warnings.
2014-06-02 23:42:58 +02:00
The Dax
70e1abac08 Win32: Use CALLBACK (__stdcall) for DinputDevice::DevicesCallback. Fixes 32-bit compilation. 2014-06-02 08:28:35 -04:00
The Dax
58411136ee Remove the const int, and fix another warning. 2014-06-01 18:32:14 -04:00
The Dax
9672701743 Win32 buildfix and warning fix.
I don't know how many pads are supposed to be supported, but I went with a reasonable number until the proper amount is committed.
2014-06-01 18:25:35 -04:00
Peter Tissen
5e34dbf3fc limit Dinput devices to the max supported in input_state and update the native submodule to get the MAX_NUM_PADS constant 2014-06-01 12:37:32 +02:00
Peter Tissen
46eb74e98a undo visual studio auto-indenting 2014-06-01 12:37:31 +02:00
Peter Tissen
1024eb7b63 initial commit for multiple DInput devices.
allow multiple dinput devices but still block all dinput devices if an xinput device is present.
This still has some issues with devices not being able to be dynamically added or removed but
even many commercial games react to hot-plug DInput events. Also, the axis handling is not really
ideal yet but it works for now.
2014-06-01 12:37:30 +02:00
Sacha
8b4280b297 Rename KEYCODE to NKCODE (native key code) to stop name collision. Implement Blackberry keymapping. 2013-08-05 03:31:40 +10:00
Unknown W. Brackets
b46ab5f5a4 Always defined WIN32_LEAN_AND_MEAN.
Might as well, less mess everywhere else.
2013-07-28 21:04:20 -07:00
Unknown W. Brackets
d9bfcce0de Switch to buttons instead of A/B/X/Y for dinput.
This way people don't say "but my X button shows up as L1."
2013-07-07 17:05:03 -07:00
Unknown W. Brackets
4f93d57186 Add a few more dinput axises since it's easy. 2013-07-07 16:28:36 -07:00
Unknown W. Brackets
4541a79d54 Send only changed analog sticks in dinput. 2013-07-07 16:10:21 -07:00
Unknown W. Brackets
3852e26558 Remove the force device setting, map instead. 2013-07-07 13:44:21 -07:00
Unknown W. Brackets
b3b2269536 Remove some dead code. 2013-07-07 13:43:53 -07:00
Unknown W. Brackets
e6f4f3a9ac Fix POV so it resets, cooperates with kbd.
Only resends on change.  DirectInput is all about polling, unfortunately.
We could use a separate thread and wait on events...
2013-07-07 13:43:28 -07:00
The Dax
0003b4d4dd Layout ApplyButtons to more closely resemble the XInput code. 2013-07-07 16:33:15 -04:00
The Dax
175223118a Make coding style consistent across entire DinputDevice.cpp file. 2013-07-07 16:28:42 -04:00
The Dax
82b3afe923 Fix more styling issues. 2013-07-07 16:25:23 -04:00
The Dax
d182a3388e Fix some styling issues, remove some old and irrelevant comments. 2013-07-07 16:19:55 -04:00
The Dax
c65a2eeda3 Fix default button mappings and incorrect axes(they are wrong on my controller, at least..).
TODO: Fix comments.

Also, is there no way to remove the hack for the special buttons..?
2013-07-07 16:19:55 -04:00
The Dax
c5ffd23fb1 Fix inverted buttons, and allow the special keys to be remapped[hopefully..]. 2013-07-07 16:19:55 -04:00
The Dax
9aaf4e5e08 Add RightStickBind support. It's still not 100% bug free... 2013-07-07 16:19:55 -04:00
The Dax
3023ab91ec Add POV support. 2013-07-07 16:19:55 -04:00
The Dax
bc06c5992e Fix horrible styling. 2013-07-07 16:19:54 -04:00
The Dax
8e136bc383 Begin updating DirectInput for keymapping, and to take it off the legacy path. 2013-07-07 16:19:54 -04:00
The Dax
3560a489fb Add an option to allow DirectInput to swap the right analog stick axes, in case the emulator detects them incorrectly. 2013-07-05 19:09:16 -04:00
The Dax
fb3ade56b9 Add option to bind right analog stick to left/right dpad buttons only. Can be useful for games that use the dpad as a camera, and horizontal camera movement is more common than vertical(i.e. Monster Hunter). 2013-07-05 06:02:47 -04:00
Henrik Rydgård
0d0e1db1b9 Revert "Update DinputDevice.cpp"
This reverts commit 99ede3fbbb.
2013-06-29 18:12:48 +02:00
mk22customg
99ede3fbbb Update DinputDevice.cpp
Correct right stick options to DirectInput.
2013-06-29 22:19:56 +08:00
Unknown W. Brackets
a789b9edc2 Add right stick options to DirectInput.
At least, my controller uses Z axis/rotation.
2013-06-21 18:07:50 -07:00
Henrik Rydgard
fa335c83d3 Modify DInput and touch analog to not clamp to a circle. Tries to fix #2316 2013-06-19 20:47:42 +02:00
nachume
662df67d39 ADD: Pop-up menu for disable bind added to the controls dialog.
FIX: I forgot to delete ControlsMapping instance.
2013-05-23 09:39:36 +09:00
nachume
d24e5be256 FIX : keyboard bind issue, can not be setting of analog key.
ADD: set the dead zone to the axis of the DirectInput.
2013-05-19 18:12:22 +09:00