diff options
| author | 2024-01-06 21:17:57 -0600 | |
|---|---|---|
| committer | 2024-01-06 21:18:44 -0600 | |
| commit | a36f4d0a9f2c0fee837856e4db3e4ca10bfed25b (patch) | |
| tree | e13147afa84aaba79e36bbee59b0aa86f81ccf38 /src/hid_core | |
| parent | Merge pull request #12596 from german77/hid_qlaunch (diff) | |
| download | yuzu-a36f4d0a9f2c0fee837856e4db3e4ca10bfed25b.tar.gz yuzu-a36f4d0a9f2c0fee837856e4db3e4ca10bfed25b.tar.xz yuzu-a36f4d0a9f2c0fee837856e4db3e4ca10bfed25b.zip | |
service: hid: Implement CaptureButtonAssignment
Diffstat (limited to 'src/hid_core')
| -rw-r--r-- | src/hid_core/resources/npad/npad.cpp | 17 | ||||
| -rw-r--r-- | src/hid_core/resources/npad/npad.h | 6 |
2 files changed, 23 insertions, 0 deletions
diff --git a/src/hid_core/resources/npad/npad.cpp b/src/hid_core/resources/npad/npad.cpp index e6c035628..ea035d759 100644 --- a/src/hid_core/resources/npad/npad.cpp +++ b/src/hid_core/resources/npad/npad.cpp | |||
| @@ -1339,4 +1339,21 @@ AppletDetailedUiType NPad::GetAppletDetailedUiType(Core::HID::NpadIdType npad_id | |||
| 1339 | }; | 1339 | }; |
| 1340 | } | 1340 | } |
| 1341 | 1341 | ||
| 1342 | Result NPad::SetNpadCaptureButtonAssignment(u64 aruid, Core::HID::NpadStyleSet npad_style_set, | ||
| 1343 | Core::HID::NpadButton button_assignment) { | ||
| 1344 | std::scoped_lock lock{mutex}; | ||
| 1345 | return npad_resource.SetNpadCaptureButtonAssignment(aruid, npad_style_set, button_assignment); | ||
| 1346 | } | ||
| 1347 | |||
| 1348 | Result NPad::ClearNpadCaptureButtonAssignment(u64 aruid) { | ||
| 1349 | std::scoped_lock lock{mutex}; | ||
| 1350 | return npad_resource.ClearNpadCaptureButtonAssignment(aruid); | ||
| 1351 | } | ||
| 1352 | |||
| 1353 | std::size_t NPad::GetNpadCaptureButtonAssignment(std::span<Core::HID::NpadButton> out_list, | ||
| 1354 | u64 aruid) const { | ||
| 1355 | std::scoped_lock lock{mutex}; | ||
| 1356 | return npad_resource.GetNpadCaptureButtonAssignment(out_list, aruid); | ||
| 1357 | } | ||
| 1358 | |||
| 1342 | } // namespace Service::HID | 1359 | } // namespace Service::HID |
diff --git a/src/hid_core/resources/npad/npad.h b/src/hid_core/resources/npad/npad.h index 58f8c7acf..e602ddaea 100644 --- a/src/hid_core/resources/npad/npad.h +++ b/src/hid_core/resources/npad/npad.h | |||
| @@ -149,6 +149,12 @@ public: | |||
| 149 | 149 | ||
| 150 | AppletDetailedUiType GetAppletDetailedUiType(Core::HID::NpadIdType npad_id); | 150 | AppletDetailedUiType GetAppletDetailedUiType(Core::HID::NpadIdType npad_id); |
| 151 | 151 | ||
| 152 | Result SetNpadCaptureButtonAssignment(u64 aruid, Core::HID::NpadStyleSet npad_style_set, | ||
| 153 | Core::HID::NpadButton button_assignment); | ||
| 154 | Result ClearNpadCaptureButtonAssignment(u64 aruid); | ||
| 155 | std::size_t GetNpadCaptureButtonAssignment(std::span<Core::HID::NpadButton> out_list, | ||
| 156 | u64 aruid) const; | ||
| 157 | |||
| 152 | private: | 158 | private: |
| 153 | struct VibrationData { | 159 | struct VibrationData { |
| 154 | bool device_mounted{}; | 160 | bool device_mounted{}; |