Bug 208349 - [PATCH] Incorrect Track Selection behaviour when using Dynamic Playlists
Summary: [PATCH] Incorrect Track Selection behaviour when using Dynamic Playlists
Alias: None
Product: amarok
Classification: Applications
Component: Playlist (show other bugs)
Version: 2.3-GIT
Platform: Ubuntu Linux
: NOR minor
Target Milestone: ---
Assignee: Amarok Developers
Depends on:
Reported: 2009-09-24 05:14 UTC by John Atkinson
Modified: 2010-03-23 13:07 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Note You need to log in before you can comment on or make changes to this bug.
Description John Atkinson 2009-09-24 05:14:00 UTC
Version:           2.2-GIT (using KDE 4.3.1)
OS:                Linux
Installed from:    Ubuntu Packages

When using Dynamic Playlists, when previous tracks are automatically removed from the playlist the currently selected track[s] changes. This is particularly obvious when double clicking to play a specific track.

To Reproduce:
- Enable dynamic playlist.
- Set the number of "previous" allowed in the dynamic playlist to 5 (This is arbitrary but useful to illustrate this example).
- Play (or skip) through the playlist until you are playing track 5.
- Double click track 6.

- Track 4 (previously 5) is now selected.

Expected behaviour:
- Track selection is persistent when automatically removing tracks, although the position of the tracks within the list will change.

Further Info:
- Similar effects occur when the end of the currently playing track is reached. This does not just occur when double clicking.
- The position jumped to behind the newly playing track is equal to the number of tracks removed from the start of the playlist.
Comment 1 John Atkinson 2009-09-24 05:23:21 UTC
Proposed patch:
Comment 2 Kuba Serafinowski 2009-09-24 08:24:47 UTC
confirmed as of rev cd7ba53927c8777384043d85e44918aba64f17f3
Comment 3 Mark Kretschmann 2009-09-30 14:20:48 UTC
Thanks John, I've merged the patch into mainline. Seems to work nicely here :)

(further testing from others welcome)
Comment 4 langstr 2010-03-23 13:07:45 UTC
FYI: I just committed 21935f35a604ae1883633d11e9001c1df70ccb87

Playlist view cleanup: remove workaround for BUG 208349 (retaining selection during playlist item remove).
  - Don't call 'reset()' on signal 'layoutChanged' from the source model.
    I can not see any reason to do that, and the current maintainers don't remember a
    clear reason.
  - Remove '(save|restore)TrackSelection()'.
    These were added for BUG 208349, but it's something that QListView should be handling
    automatically. I don't see any point to them now that there are fewer junk signals
    flying through the ModelStack.
    I checked that I could reproduce the problem in v2.2.0, and also that I can not
    reproduce it in this commit where I've removed the workaround.

This removes your workaround, because I believe it is no longer needed.

In case I am wrong and the problem reappears for you, please re-open this bug report.