SUMMARY When multiple tracks are queued, and "Repeat current track" is enabled, the "Skip forward" button repeats the current track instead. This makes sense on paper (because of the repeat mode), but in practice it is likely not what the user means as to restart they can already use the "Skip backward" button and repeat mode is generally only expected to affect 'automatic advancing' (and maybe if the backward/forward buttons loop around or are disabled). STEPS TO REPRODUCE 1. Have multiple songs queued 2. Enable "Repeat current track" 3. Click "Skip Forward" OBSERVED RESULT Current song repeats EXPECTED RESULT "Skip forward" overrides repeat mode and starts playing the next song SOFTWARE/OS VERSIONS Windows: macOS: Linux/KDE Plasma: (available in About System) KDE Plasma Version: 5.27.8 KDE Frameworks Version: 5.110.0 Qt Version: 5.15.10 ADDITIONAL INFORMATION Seems this was also implemented in Amarok at some point, BUG: 85087.
I think I've used other music players that did this too, but yeah, probably not the right UX. :)
A possibly relevant merge request was started @ https://invent.kde.org/multimedia/elisa/-/merge_requests/504
Git commit 633144fbe8d2cc2a275ce6dffd8865a898b7b78a by Jack Hill, on behalf of Quinten Kock. Committed on 03/11/2023 at 17:40. Pushed by jackh into branch 'master'. Make next button override Repeat::One This adds a forceNext parameter to skipNextTrack so that it can go to the next track in spite of Repeat::One when the user explicitly clicked the next button. M +8 -0 src/elisautils.h M +2 -2 src/manageaudioplayer.cpp M +3 -2 src/manageaudioplayer.h M +9 -9 src/mediaplaylistproxymodel.cpp M +1 -1 src/mediaplaylistproxymodel.h M +1 -1 src/mpris2/mediaplayer2player.cpp M +15 -2 src/plugins.qmltypes M +1 -1 src/qml/shared/BasePlayerControl.qml M +1 -1 src/windows/PlatformIntegration.qml https://invent.kde.org/multimedia/elisa/-/commit/633144fbe8d2cc2a275ce6dffd8865a898b7b78a