sonic2kk / steamtinkerlaunch

Linux wrapper tool for use with the Steam client for custom launch options and 3rd party programs
GNU General Public License v3.0
2.1k stars 70 forks source link

Add Non-Steam Game: Overhaul SteamGridDB Integration #944

Closed sonic2kk closed 10 months ago

sonic2kk commented 10 months ago

Another big piece of work for #933.

Overview

This PR overhauls the SteamGridDB options for Add Non-Steam Game, with the following changes:

image

This still needs in-depth testing, but initial testing is promising!

Remaining work

However, there is an issue with the GUI. Right now it is too big to display as a dialogue on regular 1080p displays, and even when maximised it hides the buttons at the bottom. This makes it pretty much unusable, so we'll need to make it scrollable or something.

We also have to update the helpscreen and wiiki with these new parameters.


TODO:

sonic2kk commented 10 months ago

Tested with just passing the game name and enabling SteamGridDB (no Game ID/App ID/Game Name passed at all) and it worked for Cake Mania!

Next we need to test Game ID, Steam AppID, and game name individually, and then test the fallbacks to make sure they work.

We need to test from the commandline as well after all of this too, ideally the same cases.

sonic2kk commented 10 months ago

Entering a custom game name to search on will correctly use that instead of the App Name!

sonic2kk commented 10 months ago

On the UI front, this appears to be mostly working as expected.

Commandline has not been tested extensively yet, but it should work since the UI just uses the commandline options.

sonic2kk commented 10 months ago

Functionally, this feature is complete, but we need to update the wiki to note these changes, and fix the UI sizing issue.

sonic2kk commented 10 months ago

Wiki overhaul is ready to go, we just need to finish up this PR!

sonic2kk commented 10 months ago

Commandline usage seems to not work...

It seems that if --use-steamgriddb is not passed, then no artwork is fetched, even if other fields are provided. When it is passed, everything works as expected.

So I need to figure out and fix this, as --use-steamgriddb should not be required on the commandline.

sonic2kk commented 10 months ago

Fixed with 72c68b8.

sonic2kk commented 10 months ago

Menu is now scrollable, so we should just have to update the langfiles now and be good to go!

sonic2kk commented 10 months ago

Langfiles should be synced up now, will do a couple of final tests and then bump the version and merge!

sonic2kk commented 10 months ago

Shellcheck is good, testing with and without SteamGridDB works (including local game art), SteamGridDB is only fetched on GUI when SteamGridDB is enabled, auto enabled if any fields are passed on commandline, and all fallbacks work as expected. This is good to merge!