raveberry / raveberry

A multi-user music server with a focus on participation
GNU Lesser General Public License v3.0
714 stars 44 forks source link

Show search results instead of enqueuing the first song #81

Open tiny-e opened 4 years ago

tiny-e commented 4 years ago

image

If you type in there and wait, you get local/youtube/(assuming other) suggestions. If you hit enter, it just starts searching online and downloads something. Ran into this issue when I let a friend access it over the web and asked him to cue some music (with minimal instruction).

I would think the default behavior would be to produce a list of results and allow the user to select one?

raveberry commented 4 years ago

Every time you start entering something, suggestions will immediately pop up. There is no need for a button to do that. Also, I don't quite understand why pressing enter should not initiate the queuing of this query. Pretty much everywhere "Enter" confirms/finalizes/sends user input.

tiny-e commented 4 years ago

I understand they don't need to.. but they do...

If someone types in the name of something and mistakenly hits enter (probably more of an issue on a computer than a phone) it just starts downloading -something- based on the input. There really isn't a selection made to finalize.

raveberry commented 4 years ago

How would you go about solving this issue?

My opinion is that it is not necessary to provide a selection of songs after pressing enter, as suggestions are already given while typing the partial query. I understand that the result of a search is not always what was intended, but adding an additional step between pressing enter and enqueuing a song would unnecessarily complicate the process for all cases in which the search term leads to the correct result.

tiny-e commented 4 years ago

I guess I feel that if I'm making a selection, I should be the one making the selection. -- I enter my search term (again this is probably going to be more of an issue with a PC user vs a phone) and then pick the result I want. If I think about it, this is basically how every search engine works. Enter your query, get a list of results, select one. The current behavior, to me, is somewhat like entering a query on google and hitting "I'm feeling lucky.. "

The hitting enter thing didn't happen to me, but it did happen to the first person I allowed to test it (over the wan).

raveberry commented 4 years ago

I see your point. It probably would improve UX if there was the possibility to choose from search results instead of automatically adding the first result. My suggested solution to this would probably look like this:

This introduces an additional step. However, I changed my mind and think this is justifiable for the overall improvement. After all, songs can still be pushed directly through the live suggestions. Implementing this will require a lot of work, though. New UI needs to be made, the request process needs to be split into two parts, parallel loading of the search results is required, ideally users would see the thumbnails of the results etc.

I think that in the end this will be a great addition, but I'm not sure when I have time for all of this. In the meantime we will have to stick with the current solution, which is not too bad in my opinion. Usually the right song can be found by providing a sufficiently precise query. This circumstance might not be obvious to first time users, but it is quickly learned. Until the advanced search feature is implemented, do you have a suggestion how the current meaning of the button could be conveyed better?

fent commented 1 month ago

add a selectable state to the dropdown. initially when typing, nothing is selected, so pressing [enter] does nothing. once the user presses [down] on their keyboard, an item is selected and highlighted. at this point, pressing [enter] does queue up the item.