From c5d2ad99d2b3730f1b79fd549ac46a310bdcb851 Mon Sep 17 00:00:00 2001 From: R Date: Thu, 20 Apr 2023 00:49:50 +0100 Subject: Support Steam Deck controls directly through hidraw This reads Steam Deck controls bypassing Steam Input. This allows for access to motion controls as well as independent access to thumb sticks, trackpads, and back grip buttons. --- Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp') diff --git a/Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp b/Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp index 5b7e27ffe1..dfe60c1eae 100644 --- a/Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp +++ b/Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp @@ -34,6 +34,9 @@ #ifdef CIFACE_USE_DUALSHOCKUDPCLIENT #include "InputCommon/ControllerInterface/DualShockUDPClient/DualShockUDPClient.h" #endif +#ifdef CIFACE_USE_STEAMDECK +#include "InputCommon/ControllerInterface/SteamDeck/SteamDeck.h" +#endif ControllerInterface g_controller_interface; @@ -78,6 +81,9 @@ void ControllerInterface::Initialize(const WindowSystemInfo& wsi) #ifdef CIFACE_USE_DUALSHOCKUDPCLIENT m_input_backends.emplace_back(ciface::DualShockUDPClient::CreateInputBackend(this)); #endif +#ifdef CIFACE_USE_STEAMDECK + m_input_backends.emplace_back(ciface::SteamDeck::CreateInputBackend(this)); +#endif // Don't allow backends to add devices before the first RefreshDevices() as they will be cleaned // there. Or they'd end up waiting on the devices mutex if populated from another thread. -- cgit v1.2.3