rawinput: add basic support for xinput (#617)

## Link to GitHub Issue or related Pull Request, if one exists
#616 

## Description of change
Adds preliminary support for XInput controllers. Enough to manually bind
buttons and map analogs.
This commit is contained in:
bicarus
2026-04-09 02:49:20 -07:00
committed by GitHub
parent f89efa2558
commit 7b4227d2a9
13 changed files with 511 additions and 6 deletions
+3
View File
@@ -10,6 +10,7 @@
#include "device.h"
#include "hotplug.h"
#include "rawinput/xinput.h"
#include "util/scope_guard.h"
namespace rawinput {
@@ -84,6 +85,7 @@ namespace rawinput {
void devices_scan_piuio();
void devices_scan_smxstage();
void devices_scan_smxdedicab();
void devices_scan_xinput();
void devices_destruct();
void devices_destruct(Device *device, bool log = true);
void flush_start();
@@ -101,6 +103,7 @@ namespace rawinput {
public:
HWND input_hwnd = nullptr;
std::unique_ptr<xinput::XInputManager> XINPUT_MGR = nullptr;
RawInputManager();
~RawInputManager();