strawberrymusicplayer / strawberry

:strawberry: Strawberry Music Player
https://www.strawberrymusicplayer.org/
GNU General Public License v3.0
2.74k stars 191 forks source link

Enabling one method of scrobbling should auto-enable the parent scrobble enable checkbox #428

Closed NucleaPeon closed 4 years ago

NucleaPeon commented 4 years ago

For general technical questions and help with technical issues please use the forum on https://forum.strawberrymusicplayer.org/

Describe the bug I set up and enabled last.fm scrobbling for strawberry. After a few days of listening on and off, I notice I wasn't getting scrobbles. I saw the last.fm enable checkbox (I think that was new since last time I upgraded and it was on a new laptop.) and enabled it. Kept listening for a few days, but again it wasn't scrobbling. I go into settings again and see a main enable checkbox at the top of the preferences pane.

To Reproduce Enable last.fm scrobbling without enabling the top checkbox.

Expected behavior I would like it when any scrobbling is enabled, it would automatically check the top-most checkbox as I find it unlikely there is any situation where a user would enable scrobbling and not expect it to work.

There is some nuance. I'm thinking of something like this: https://css-tricks.com/indeterminate-checkboxes/

If no scrobbling is enabled at all and user clicks one of the scrobbling methods, it should check enable that scrobble method and put an indiscriminate checkbox status on the main enable checkbox. If a user wants to have enabled scrobbles but no main scrobble -enabled checkbox, they can disable it at the top themselves in an additional step.

Another option would be to tweak the UI so the main enable checkbox is more visible, bolded or something, or if it is not checked, all scrobble methods are disabled and only once it's been checked do the scrobble options become selectable.

Screenshot_20200507_150740
NucleaPeon commented 4 years ago

Version 0.6.9 Gentoo, through the emerge build system

[I] media-sound/strawberry
     Available versions:  ~0.6.8^t (~)0.6.9^t **9999*l^t {cdda +dbus debug ipod mms mtp pulseaudio test +udisks}
     Installed versions:  0.6.9^t(06:43:27 PM 04/12/2020)(cdda dbus mtp pulseaudio udisks -debug -ipod -mms -test)
     Homepage:            https://www.strawbs.org/
     Description:         Modern music player and library organizer based on Clementine and Qt
jonaski commented 4 years ago

I don't want to automatically enable the top enable option. The top "enable" option is more like a toggle switch to turn on / off scrobbling. It is also the one indicated in the icon on the bottom of the main window, red or grey depending on whether it's enabled or not. So you should also be able to enable and prepare the settings for the individual scrobbler services without this enabled. Maybe it could be named better and be indicated better in the settings though.

NucleaPeon commented 4 years ago

A couple more ideas I have is putting everything in a parent Group Box with a checkbox option that replaces the Enabled checkbox Another idea would be to have the wording changed so "Enabled" of scrobbling differs from the "Enabled" of services, or calling it "Enable Scrobbling" and "Enable Service" respectively.

jonaski commented 4 years ago

I'm closing this since this is only a minor detail, and I don't have time to prioritize it. Anyone else is free to make a proposal for a change in a PR.