Valkirie / HandheldCompanion

ControllerService
Other
1.2k stars 92 forks source link

make Steam desktop and chord profile overrides optional #1081

Open DarkiRuiz opened 4 months ago

DarkiRuiz commented 4 months ago

Is your feature request related to a problem? Please describe. From what I've been able to see, if you run HC after Steam, you get a notification that advises restarting Steam so the default desktop and chord profiles can be overridden with empty ones. If you run HC before Steam, the override is done automatically.

This happens even if you have disabled all virtual controller settings and also configured it NOT to auto-start the desktop profile on startup.

I don't intend to use the controller aspect of HC for now, as I only play a couple games on Windows due to lack of compatibility with SteamOS, but they still run the Steam Overlay just fine.

I understand that it's possible to set the HC desktop profile to work pretty much exactly as the Steam one, but I don't really see the point on having to go through an extra layer of complexity when I'm not really using it and could just leave Steam profiles untouched.

Describe the solution you'd like Make the Steam desktop and chord profile override an optional feature that can be toggled off in the settings.

Describe alternatives you've considered I've considered disabling HC auto-starting with Windows so I can do manually and then ignore the notification, but that's not really ideal, and anytime I'd need to restart Steam I'd have to restart HC to avoid the auto-override.

Additional context My device is a Steam Deck LCD.

CasperH2O commented 4 months ago

Hey @DarkiRuiz thansk for dropping in and sharing your use case. Your request is not unreasonable. Is this feature something you'd like to work yourself and do a PR?

DarkiRuiz commented 4 months ago

Hey @DarkiRuiz thansk for dropping in and sharing your use case. Your request is not unreasonable. Is this feature something you'd like to work yourself and do a PR?

That's an interesting question. I'm a programmer somewhat familiar with C# (although I usually work with C++). After doing some browsing I think I did figure out how to do it, since it's a very minor tweak.

I can certainly try. I'll brb if I have some issue setting up the project.

DarkiRuiz commented 4 months ago

okay I think I have done it properly: https://github.com/Valkirie/HandheldCompanion/pull/1082

CasperH2O commented 4 months ago

Thank you @DarkiRuiz , looks good at first glance. @Valkirie is the best qualified to review this.

In my opinion this setting would have made more sense being placed under the third party applications header, or perhaps we need to rename that.

Hope the development process was enjoyable and straightforward?

DarkiRuiz commented 4 months ago

@CasperH2O compared to my current work-related project in UE5 this was a walk in the park. 😆

The code was easy to understand, that made things easy despite not touching C# in years.

I actually put that setting there because it'd be right below the one that toggles HC's own desktop profile auto-start, which looked like a good place for it to be since that's where I looked for it in the first place 😆

But I'm happy to just propose this feature, so anybody can feel free to improve on it if needed.