-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Get top and similar tracks #219
Conversation
This turns the search results controller into a generic "we have a list of tracks" controller. It should probably be renamed, along with the class and enum that holds the tracks to begin with. There's some hacks to make this work with an ObjC frontend. Once we convert it to Swift, we can just expose the enum directly. UI is not wired up yet.
There's an issue with titles that kind of sucks. Will have to fix. Fixes GH-109
Could have used bindings instead, don't feel too strongly either way
@SevereOverfl0w Sorry your feature requests came late. If you (want to) try this, let me know. |
I just tried to download the artifact from the build but it's giving me:
But, happy to help if it helps you test this out! |
Looks like I need to fix the CI setup sometime; you should get a signing issue (I don't sign CI builds), but it should at least work. Here's a signed build for your trouble: |
Generally is working, thanks! It wasn't clear to me how to go from "Similar Tracks" back to my library though if I changed my mind. I don't see a "back" button, and clicking on my Server doesn't work because it's already focused. |
There is a back/forward pair in the menu, which can be added to the toolbar, but it's not there by default. It should probably be made more obvious. You can also use the trackpad back/forward gestures like in Safari as well. |
This does some refactoring to the search controller and results class to handle the concept of not just searches, but other lists of tracks returned by the server. It's a little gross at times because it has to interface Swift's enums with the Objective-C side. I'm not sure if this is the best strategy, but it does seem to work for now; we can split out the new stuff into a separate controller if needed..
Note that the "quality" of the returned tracks is highly dependent on server configuration; Subsonic and Navidrome at least rely on last.fm for anything more intelligent than returning starred tracks.
Fixes GH-108 and GH-109.