9a07ed53eb
core: Make variable shadowing a compile-time error
...
Now that we have most of core free of shadowing, we can enable the
warning as an error to catch anything that may be remaining and also
eliminate this class of logic bug entirely.
2021-05-16 03:43:16 -04:00
5a042bdaa1
Merge pull request #6267 from german77/gestureRewrite
...
hid: Improve hardware accuracy of gestures
2021-05-12 09:17:23 -04:00
bf380b8584
hle: kernel: Remove deprecated Object class.
2021-05-05 16:40:52 -07:00
2e8d6fe9a0
hle: kernel: Migrate KReadableEvent and KWritableEvent to KAutoObject.
2021-05-05 16:40:51 -07:00
89edbe8aa2
hle: kernel: Refactor several threads/events/sharedmemory to use slab heaps.
2021-05-05 16:40:51 -07:00
ab704acab8
hle: kernel: Ensure all kernel objects with KAutoObject are properly created.
2021-05-05 16:40:51 -07:00
addc0bf037
hle: kernel: Migrate KEvent to KAutoObject.
2021-05-05 16:40:50 -07:00
5e5933256b
hle: kernel: Refactor IPC interfaces to not use std::shared_ptr.
2021-05-05 16:40:50 -07:00
8c30ed6d09
hid: Improve hardware accuracy of gestures
2021-05-05 10:13:09 -05:00
9e726a9250
service: Resolve cases of member field shadowing
...
Now all that remains is for kernel code to be 'shadow-free' and then
-Wshadow can be turned into an error.
2021-05-04 04:38:38 -04:00
08d5bd36d8
hid: Fix touch not initializing properly if disabled
2021-05-02 21:27:15 -05:00
1ed1dd3c89
Disable touch if setting is not enabled
2021-04-30 19:28:21 -05:00
cfdec68d5a
address comments
2021-04-26 22:07:16 -05:00
c19ad21ae8
hid: Implement SevenSixAxis and ConsoleSixAxisSensor
2021-04-23 22:12:41 -05:00
39497183a6
npad: Remove duplicated class member variable
...
ControllerBase already has a System reference that can be accessed from
this class, so we can get rid of this to make the class layout a little
more straightforward.
2021-04-19 12:23:28 -04:00
a4c6712a4b
common: Move settings to common from core.
...
- Removes a dependency on core and input_common from common.
2021-04-14 16:24:03 -07:00
8e545deab9
service: hid: Stub SetAnalogStickUseCenterClamp
...
- Used by eBASEBALLパワフルプロ野球2020
2021-04-08 03:41:06 -04:00
aca6ab6417
Merge pull request #6131 from german77/rightjoyconSLSR
...
HID: Fix SL and SR buttons for right joycon
2021-04-02 15:48:04 -04:00
eaf0c4af11
HID: Fix SL and SR buttons for right joycon
2021-04-02 09:03:11 -05:00
7c26a9aefe
HID: Initialize correctly the gesture finger_id and filter invalid results
2021-03-26 11:13:18 -06:00
ee9ebeeb80
Merge pull request #5276 from german77/gestures
...
HID: Implement gestures
2021-02-27 22:18:41 -05:00
e895ab7d6f
Implements touch, pan, pinch and rotation gestures
2021-02-27 19:54:42 -06:00
a994a40467
hid: Implement GC controller
2021-02-07 22:59:46 -06:00
61bf850f3d
Merge pull request #5326 from german77/hidUpdate1
...
HID: Update the HID service to match more closely to switchbrew part 1
2021-02-06 02:40:11 -08:00
ff3c7c068b
hle: kernel: Reimplement KReadableEvent and KWritableEvent.
2021-02-05 14:03:32 -08:00
3f942c01f0
hle: kernel: Rename WritableEvent to KWritableEvent.
2021-02-05 14:00:36 -08:00
e86a7e3691
hle: kernel: Rename ReadableEvent to KReadableEvent.
2021-02-05 14:00:36 -08:00
8019b2b9b5
Add footer types and address comments
2021-02-03 20:17:08 -06:00
9a9e81f2e9
Fix npad struct to match switchbrew
2021-02-03 20:17:08 -06:00
f30ef98761
Adds missing controller types and properties
2021-02-03 20:17:08 -06:00
d4d39aa4c7
npad: Remove unused device handle parameter
2021-01-27 13:05:31 -05:00
a8245cf2f1
Stub Set/Get/Reset SixaxisSensorFusionParameters
2021-01-24 11:28:52 -06:00
a1335d3d51
Merge pull request #5270 from german77/multiTouch
...
HID: Add multitouch support
2021-01-20 22:39:01 -08:00
4a67a5b917
npad: Add check for HANDHELD_INDEX in UpdateControllerAt()
2021-01-17 22:36:17 -05:00
f8650a9580
core: Silence Wclass-memaccess warnings
...
This requires making several types trivial and properly initialize
them whenever they are called.
2021-01-15 16:31:19 -03:00
b483f2d010
Always initialize keyboard input
2021-01-15 09:05:17 -06:00
8495e1bd83
Add mutitouch support for touch screens
2021-01-15 09:05:17 -06:00
d8df9a16bd
Allow to return up to 16 touch inputs per engine
2021-01-15 09:05:17 -06:00
390ee10eef
Allow all touch inputs at the same time and remove config options that are not longer necesary
2021-01-15 09:05:17 -06:00
d583e01f54
Add multitouch support
2021-01-15 09:03:39 -06:00
54ea3c47c8
controllers/npad: Make press_state atomic
2020-12-18 10:33:28 -05:00
1c773c0869
controllers/npad: Validate device handles before use
...
Some games such as NEKOPARA Vol. 3 send invalid device handles when calling InitializeVibrationDevice. Introduce a check to validate the device handle before use.
2020-12-12 07:05:38 -05:00
4eb7327559
Add missing types to NpadCommunicationMode
2020-11-28 21:56:02 -06:00
3898d8f0d7
Stub set and get NpadCommunicationMode
2020-11-26 21:35:11 -06:00
ad50209383
hid: Reimplement Begin/EndPermitVibrationSession
...
Upon further investigation, these commands allow temporary vibrations even when the "Controller Vibration" system setting is disabled. As a result, vibrations are allowed when either the system setting or this flag is set to true. Therefore, we can only block vibrations when both flags are set to false.
2020-11-15 23:33:21 -05:00
d8ad2f3484
controllers/npad: Load input devices on init
2020-11-15 23:33:21 -05:00
97b2220a82
general: Fix compiler warnings on linux and miscellaneous changes
2020-11-15 23:33:21 -05:00
30e0d1c973
controllers/npad: Remove the old vibration filter
...
Previously we used a vibration filter that filters out amplitudes close to each other. It turns out there are cases where this results into vibrations that are too inaccurate. Remove this and move the 100Hz vibration filter (Only allowing a maximum of 100 vibrations per second) from sdl_impl to npad when enable_accurate_vibrations is set to false.
2020-11-15 23:33:21 -05:00
978ca65f59
hid: Implement InitializeVibrationDevice and IsVibrationDeviceMounted
2020-11-15 23:33:20 -05:00
e9e1876e82
input_common: Add VibrationDevice and VibrationDeviceFactory
...
A vibration device is an input device that returns an unsigned byte as status.
It represents whether the vibration device supports vibration or not.
If the status returns 1, it supports vibration. Otherwise, it does not support vibration.
2020-11-15 23:33:20 -05:00