dlss-swapper
dlss-swapper copied to clipboard
[Feature request] See the directory of the game modified
Is your feature request related to a problem? Please describe. I have Rainbow Six Siege on both Steam and Ubisoft Connect - it would be nice to see which one it is modifying.
Describe the solution you'd like Get some info with the directory of the game it modifies.
Additional context
At the moment it's the Steam one, BUT this is a great catch which would have been a much bigger problem in the future.
A browse button would be good.
What about a platform icon on the top right of the game cover?
@beeradmoore It's an edge-case as this is a duplicate on one platform, but this also appears to be an issue where there are multiple installs on separate drives.
Platform detection would be useful, but I think in the short term library filtering (#4) would at least partially alleviate the issue for the same game in a different library.
Interesting. Did not know you can have duplicate on a single platform.
DLSS Swapper itself works by platform detection because it scans games from each platform independently, not looking for any game installs. But you can see over here that means there is some weird hurdles to jump through to find the game install dir + name + banner image.
As for platform grouping that work is mostly done (can see a screenshot of it here), just dealing with a crash when try use a CollectionViewSource object.
I don't want to have game install dir on the games list screen (just to keep that tidier for now). I wonder if when you click a game it can display more info about the game rather than just a dropdown. So on that screen it can say name, install dir, original dlss version, and then a dropdown to change.
Indeed, I'd investigated integrations with other platforms, most of which were not as straightforward as Steam due to the way in which they handled install locations and the availability (or lack thereof) of image assets.
I agree that keeping the main library list as minimal as possible would be best, I see it being very possible to overlay the directory and other information bound to a right-click. Though it could also be just as easily achieved through a new page that displays all the info pertaining to that game.
Regarding the CollectionViewSource issue, it may also be worth restructuring and moving fully towards MVVM as this would alleviate some potential future issues and inefficiencies. Although I'm aware of the overhead, and the fact you likely weren't expecting the app to garner such interest so rapidly, so may not be able to justify such a change.
It'd also be pretty awesome to get a contributors readme and/or custom labels for issues to mark them as "up for grabs" or "help wanted" just to make it more obvious to other potential contributors where they can help.
Even displaying a tooltip of name and install directory on hover would help. Though in the second screen does allow to add more things over time (eg. for the request of "rate this version of DLSS up/down for this game").
I'm not entirely sure if MVVM will help with the CollectionViewSource issue, I can share more info later but I am swapping between List<Game>
and CollectionViewSource
depending on what the filter option is. I am getting a "Value does not fall within the expected range" when I use the CollectionViewSource. But using one setup in the Page.Resources XAML seems to work.
I'll look more into MVVM, I have used MVC in my normal workload (Xamarin.Forms) but generally did not find much use of it vs binding to the page itself. More than happy to move to MVVM if for anything but to gain experience in doing it.
+1 for contributors readme and custom labels. I'll get that sorted after filter/group build goes out.
Hey @cftad, as mentioned in your PR, I have commited the things with CollectionViewSource
. It was doing weird things. Changing ItemsSource
would cause SelectionChanged
to fire.
I have a feeling I am using CollectionViewSource
incorrectly. Do you know if its possible to use it as the only source and then either have IsSourceGrouped = true
where it then uses the game libraries List<IGameLibrary>
that is set to its Source
. Then when IsSourceGrouped = false
it uses all the items within each IGameLibrary
and sort all those together.
In its current committed state I am creating a new list or new collection view source, and this feels wrong.