Skip to content

WIP add Steam Deck touchpad functionality and enable the device profile#493

Draft
GloriousEggroll wants to merge 1 commit intoShadowBlip:mainfrom
GloriousEggroll:steam_deck_touchpad_support
Draft

WIP add Steam Deck touchpad functionality and enable the device profile#493
GloriousEggroll wants to merge 1 commit intoShadowBlip:mainfrom
GloriousEggroll:steam_deck_touchpad_support

Conversation

@GloriousEggroll
Copy link
Contributor

@GloriousEggroll GloriousEggroll commented Jan 8, 2026

this makes it so left and right touchpad mimic SteamOS functionality, with one minor improvement.

SteamOS behavior:
left pad = dpad, tactile bump when navigating menus. right pad = nothing

Enhanced behavior provided:
left pad = dpad, tactile bump when navigating menus. right pad = standard touchpad with cursor movement, left click select with tactile bump

Note: all controls are fully re-mappable per-game within steam, this just provides functionality to match steamos when in a steamos session instead of doing nothing like they currently do.

this also enables the device profile and changes its target to deck so that the driver is used.

requires ShadowBlip/OpenGamepadUI#500 for OGUI to be able to apply profiles with leftpad/rightpad support

@GloriousEggroll GloriousEggroll force-pushed the steam_deck_touchpad_support branch from 0b7bd30 to bb3fa39 Compare January 9, 2026 02:15
Copy link
Contributor

@pastaq pastaq left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not convinced this is the best approach, but I'm not really able to articulate why at this time. It feels like a lot of what is happening here is workarounds that should either be in the driver, target device, or exposed as configurable to OpenGamepadUI. I'd like @ShadowApex to review before we merge this, but I do have a couple nits in the meantime.

for e in events {
match e {
// --- LEFT PAD PRESS: gate D-pad output ---
steam_deck::event::Event::Button(steam_deck::event::ButtonEvent::LPadPress(v)) => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can probably use crate steam_deck::event to clean these up a bit

this makes it so left and right touchpad mimic SteamOS functionality,
with one minor improvement.

SteamOS behavior:
left pad = dpad, tactile bump when navigating menus.
right pad = nothing

Enhanced behavior provided:
left pad = dpad, tactile bump when navigating menus.
right pad = standard touchpad with cursor movement, left click select
with tactile bump

Note: all controls are fully re-mappable per-game within steam, this
just provides functionality to match steamos when in a steamos session
instead of doing nothing like they currently do.
@GloriousEggroll GloriousEggroll force-pushed the steam_deck_touchpad_support branch from bb3fa39 to fc9aff1 Compare January 9, 2026 02:27
@GloriousEggroll GloriousEggroll changed the title add Steam Deck touchpad functionality and enable the device profile WIP add Steam Deck touchpad functionality and enable the device profile Jan 9, 2026
@GloriousEggroll GloriousEggroll marked this pull request as draft January 9, 2026 02:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants