feat(input): implement libvirtualhid#5368
Conversation
Bundle ReportChanges will increase total bundle size by 1.31kB (0.05%) ⬆️. This is within the configured threshold ✅ Detailed changes
Affected Assets, Files, and Routes:view changes for bundle: sunshine-esmAssets Changed:
|
92ddf06 to
d696dca
Compare
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #5368 +/- ##
==========================================
- Coverage 27.18% 27.14% -0.05%
==========================================
Files 111 105 -6
Lines 25412 25267 -145
Branches 11214 11204 -10
==========================================
- Hits 6909 6858 -51
+ Misses 16570 16565 -5
+ Partials 1933 1844 -89
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 50 files with indirect coverage changes Continue to review full report in Codecov by Harness.
|
b09b74e to
c8d6008
Compare
Replace the ViGEmBus install/status flow with a unified virtual input driver status endpoint and UI. Update Windows packaging, docs, locale strings, and troubleshooting pages to reflect libvirtualhid as the primary backend, with ViGEmBus shown only as a fallback. Add unit coverage for driver version parsing and status JSON helpers.
Replace Windows-native synthetic pointer/keyboard input implementations with libvirtualhid equivalents: - Remove keylayout.h and its VK-to-scancode mapping (now handled by libvirtualhid) - Remove Windows-specific touch/pen device management (HSYNTHETICPOINTERDEVICE, repeat tasks, slot compaction) - Pass touch_port and flags through to libvirtualhid for keyboard, touch, and pen events - Add pointer_viewport() and keyboard_event() helpers in virtualhid_input.cpp - Differentiate LI_TOUCH_EVENT_UP, CANCEL, and HOVER_LEAVE handling for touch contacts - Add PointerTransition support for pen events - Update capability detection to use libvirtualhid runtime - Update libvirtualhid submodule to c1cc7e0
c8d6008 to
1a1b9ad
Compare




Description
This PR implements libvirtualhid in Sunshine, replacing inputtino on Linux, vigembus on Windows AMD64, but still falling back to vigembus on Windows ARM64.
TODO:
Screenshot
Issues Fixed or Closed
Roadmap Issues
Type of Change
Checklist
AI Usage