nyrna icon indicating copy to clipboard operation
nyrna copied to clipboard

[Feature Request] Support for Game Controller Input and Switching Shortcuts

Open Areasome opened this issue 1 year ago • 8 comments

Description Add support for game controllers to enhance usability and provide intuitive controls for window management. This feature will allow users to navigate, select, and switch between running windows using a game controller, improving accessibility and efficiency. I really enjoy using this software! It would be even better if it could integrate more conveniently with Moonlight Stream services.

System Information OS: Windows 11 Nyrna Version: [2.24.0]

Expected Behavior Game Controller Support:

Detects connected game controllers (e.g., Xbox Controller, DualShock). Enables navigation through the list of running windows using the D-pad or analog stick. Assigns buttons for selection and switching windows. Customizable Shortcuts:

Add shortcut combinations for quick toggling and switching between active windows. Example shortcuts: Ctrl + Gamepad Button to instantly switch to the next/previous window. UI Enhancements:

Displays controller-friendly icons and navigation cues alongside the list of windows. Indicates the currently selected window visually.

Areasome avatar Dec 09 '24 13:12 Areasome

Thanks for the suggestion, sounds like an interesting idea!

Merrit avatar Dec 10 '24 20:12 Merrit

@Merrit It would be great if we could have xbox gamebar widget. This should be awesome with the new XBox Fullscreen experience, to be able easily to suspend and resume games from Gamebar.

BassemMohsen avatar Oct 02 '25 07:10 BassemMohsen

I think it is unlikely I will support such xbox functionality since it is Windows-specific.

Merrit avatar Oct 08 '25 20:10 Merrit

Would you be interested if I contributed the code to the project? Or would you prefer it if create a new project based on yours?

Basically we need a daemon over NamePipes, to implement the suspend/resume calls to Nyrna.

BassemMohsen avatar Oct 09 '25 08:10 BassemMohsen

I am adding to the cli interface so one can call Nyrna with the executable to suspend/resume; do you think that would work for the xbox widget?

Merrit avatar Oct 10 '25 16:10 Merrit

An API and DLL would be the best way to go. If I try to publish Microsoft Store App calling CLI, it's an uphill battle to get it approved.

  • It looks like I can check what's the current active game in focus from XBox game widget. I will need to map that to a process name, and suspend the rest of the games/store fronts that's not in focus.
  • Also, I need to detect OS sleep states, and suspend all active games and store fronts running.

This will offer nice UX, where gamers can run multiple games same time, and only game in focus can be resumed, rest suspended. On device sleep all forced to be suspended. on device wake, only game in focus can be resumed.

BassemMohsen avatar Oct 10 '25 20:10 BassemMohsen

I've given it some thought, and I don't think that would be a good direction for Nyrna.

  • Windows is already difficult to support
  • Microsoft could break the functionality we need at any time, and I wouldn't be surprised if they did with how they've been going lately
  • It would add a decent layer of complexity solely for Windows

Merrit avatar Oct 13 '25 21:10 Merrit

Thanks for letting me know. I understand that Windows is pain compared to Linux.

I might look into forking that feature from the repository in that case.

BassemMohsen avatar Oct 14 '25 17:10 BassemMohsen