diff options
Diffstat (limited to '')
| -rw-r--r-- | src/common/input.h | 2 | ||||
| -rw-r--r-- | src/input_common/drivers/udp_client.cpp | 15 | ||||
| -rw-r--r-- | src/input_common/drivers/udp_client.h | 4 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_input_player.cpp | 4 |
4 files changed, 22 insertions, 3 deletions
diff --git a/src/common/input.h b/src/common/input.h index f4f9eb30a..54fcb24b0 100644 --- a/src/common/input.h +++ b/src/common/input.h | |||
| @@ -209,6 +209,8 @@ enum class ButtonNames { | |||
| 209 | Triangle, | 209 | Triangle, |
| 210 | Share, | 210 | Share, |
| 211 | Options, | 211 | Options, |
| 212 | Home, | ||
| 213 | Touch, | ||
| 212 | 214 | ||
| 213 | // Mouse buttons | 215 | // Mouse buttons |
| 214 | ButtonMouseWheel, | 216 | ButtonMouseWheel, |
diff --git a/src/input_common/drivers/udp_client.cpp b/src/input_common/drivers/udp_client.cpp index d1cdb1ab2..333173e3d 100644 --- a/src/input_common/drivers/udp_client.cpp +++ b/src/input_common/drivers/udp_client.cpp | |||
| @@ -271,7 +271,7 @@ void UDPClient::OnPadData(Response::PadData data, std::size_t client) { | |||
| 271 | const auto touch_axis_y_id = | 271 | const auto touch_axis_y_id = |
| 272 | static_cast<int>(id == 0 ? PadAxes::Touch1Y : PadAxes::Touch2Y); | 272 | static_cast<int>(id == 0 ? PadAxes::Touch1Y : PadAxes::Touch2Y); |
| 273 | const auto touch_button_id = | 273 | const auto touch_button_id = |
| 274 | static_cast<int>(id == 0 ? PadButton::Touch1 : PadButton::touch2); | 274 | static_cast<int>(id == 0 ? PadButton::Touch1 : PadButton::Touch2); |
| 275 | 275 | ||
| 276 | // TODO: Use custom calibration per device | 276 | // TODO: Use custom calibration per device |
| 277 | const Common::ParamPackage touch_param(Settings::values.touch_device.GetValue()); | 277 | const Common::ParamPackage touch_param(Settings::values.touch_device.GetValue()); |
| @@ -319,6 +319,9 @@ void UDPClient::OnPadData(Response::PadData data, std::size_t client) { | |||
| 319 | SetButton(identifier, button, button_status); | 319 | SetButton(identifier, button, button_status); |
| 320 | } | 320 | } |
| 321 | 321 | ||
| 322 | SetButton(identifier, static_cast<int>(PadButton::Home), data.home != 0); | ||
| 323 | SetButton(identifier, static_cast<int>(PadButton::TouchHardPress), data.touch_hard_press != 0); | ||
| 324 | |||
| 322 | SetBattery(identifier, GetBatteryLevel(data.info.battery)); | 325 | SetBattery(identifier, GetBatteryLevel(data.info.battery)); |
| 323 | } | 326 | } |
| 324 | 327 | ||
| @@ -393,7 +396,7 @@ std::vector<Common::ParamPackage> UDPClient::GetInputDevices() const { | |||
| 393 | 396 | ||
| 394 | ButtonMapping UDPClient::GetButtonMappingForDevice(const Common::ParamPackage& params) { | 397 | ButtonMapping UDPClient::GetButtonMappingForDevice(const Common::ParamPackage& params) { |
| 395 | // This list excludes any button that can't be really mapped | 398 | // This list excludes any button that can't be really mapped |
| 396 | static constexpr std::array<std::pair<Settings::NativeButton::Values, PadButton>, 18> | 399 | static constexpr std::array<std::pair<Settings::NativeButton::Values, PadButton>, 20> |
| 397 | switch_to_dsu_button = { | 400 | switch_to_dsu_button = { |
| 398 | std::pair{Settings::NativeButton::A, PadButton::Circle}, | 401 | std::pair{Settings::NativeButton::A, PadButton::Circle}, |
| 399 | {Settings::NativeButton::B, PadButton::Cross}, | 402 | {Settings::NativeButton::B, PadButton::Cross}, |
| @@ -413,6 +416,8 @@ ButtonMapping UDPClient::GetButtonMappingForDevice(const Common::ParamPackage& p | |||
| 413 | {Settings::NativeButton::SR, PadButton::R2}, | 416 | {Settings::NativeButton::SR, PadButton::R2}, |
| 414 | {Settings::NativeButton::LStick, PadButton::L3}, | 417 | {Settings::NativeButton::LStick, PadButton::L3}, |
| 415 | {Settings::NativeButton::RStick, PadButton::R3}, | 418 | {Settings::NativeButton::RStick, PadButton::R3}, |
| 419 | {Settings::NativeButton::Home, PadButton::Home}, | ||
| 420 | {Settings::NativeButton::Screenshot, PadButton::TouchHardPress}, | ||
| 416 | }; | 421 | }; |
| 417 | if (!params.Has("guid") || !params.Has("port") || !params.Has("pad")) { | 422 | if (!params.Has("guid") || !params.Has("port") || !params.Has("pad")) { |
| 418 | return {}; | 423 | return {}; |
| @@ -517,6 +522,12 @@ Common::Input::ButtonNames UDPClient::GetUIButtonName(const Common::ParamPackage | |||
| 517 | return Common::Input::ButtonNames::Share; | 522 | return Common::Input::ButtonNames::Share; |
| 518 | case PadButton::Options: | 523 | case PadButton::Options: |
| 519 | return Common::Input::ButtonNames::Options; | 524 | return Common::Input::ButtonNames::Options; |
| 525 | case PadButton::Home: | ||
| 526 | return Common::Input::ButtonNames::Home; | ||
| 527 | case PadButton::Touch1: | ||
| 528 | case PadButton::Touch2: | ||
| 529 | case PadButton::TouchHardPress: | ||
| 530 | return Common::Input::ButtonNames::Touch; | ||
| 520 | default: | 531 | default: |
| 521 | return Common::Input::ButtonNames::Undefined; | 532 | return Common::Input::ButtonNames::Undefined; |
| 522 | } | 533 | } |
diff --git a/src/input_common/drivers/udp_client.h b/src/input_common/drivers/udp_client.h index 30d7c2682..e9c178139 100644 --- a/src/input_common/drivers/udp_client.h +++ b/src/input_common/drivers/udp_client.h | |||
| @@ -84,7 +84,9 @@ private: | |||
| 84 | Cross = 0x4000, | 84 | Cross = 0x4000, |
| 85 | Square = 0x8000, | 85 | Square = 0x8000, |
| 86 | Touch1 = 0x10000, | 86 | Touch1 = 0x10000, |
| 87 | touch2 = 0x20000, | 87 | Touch2 = 0x20000, |
| 88 | Home = 0x40000, | ||
| 89 | TouchHardPress = 0x80000, | ||
| 88 | }; | 90 | }; |
| 89 | 91 | ||
| 90 | enum class PadAxes : u8 { | 92 | enum class PadAxes : u8 { |
diff --git a/src/yuzu/configuration/configure_input_player.cpp b/src/yuzu/configuration/configure_input_player.cpp index ba563b382..cc0534907 100644 --- a/src/yuzu/configuration/configure_input_player.cpp +++ b/src/yuzu/configuration/configure_input_player.cpp | |||
| @@ -102,6 +102,10 @@ QString GetButtonName(Common::Input::ButtonNames button_name) { | |||
| 102 | return QObject::tr("Share"); | 102 | return QObject::tr("Share"); |
| 103 | case Common::Input::ButtonNames::Options: | 103 | case Common::Input::ButtonNames::Options: |
| 104 | return QObject::tr("Options"); | 104 | return QObject::tr("Options"); |
| 105 | case Common::Input::ButtonNames::Home: | ||
| 106 | return QObject::tr("Home"); | ||
| 107 | case Common::Input::ButtonNames::Touch: | ||
| 108 | return QObject::tr("Touch"); | ||
| 105 | case Common::Input::ButtonNames::ButtonMouseWheel: | 109 | case Common::Input::ButtonNames::ButtonMouseWheel: |
| 106 | return QObject::tr("Wheel", "Indicates the mouse wheel"); | 110 | return QObject::tr("Wheel", "Indicates the mouse wheel"); |
| 107 | case Common::Input::ButtonNames::ButtonBackward: | 111 | case Common::Input::ButtonNames::ButtonBackward: |