Skip to content
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

smart playlists: fix drill down from artists lists that have role based rules #10700

Merged
merged 1 commit into from Oct 22, 2016

Conversation

@DaveTBlake
Copy link
Member

commented Oct 13, 2016

If an "artists" type smart playlist has role rules e.g. "artist is composer", then clicking on a composer from such an artist list can result in nothing being displayed despite the fact thay they do compose some songs. This is because the role rule is not passed down to the subsequent list of albums or songs.

This is a minimal change to ensure that such incorrect blank lists are avoided.

An attempt to solve the more general problems caused by the rules from smart playlists not being passed on to the next level when an item in a list is clicked is made in #10098 . But it is probably now too late in the release cycle for such a design change, and I think there is more to be done. Hence this fix is just a stop gap to provide at least minimal functionality.

@DaveTBlake

This comment has been minimized.

Copy link
Member Author

commented Oct 15, 2016

This just moves the xsp processing to the start of CMusicDatabase::GetFilter from the end so that artist role rules can be taken into account.

Any comment @Montellese as smart playlist involved?

@DaveTBlake DaveTBlake force-pushed the DaveTBlake:DrillRoleRules branch from 42054c3 to b6db629 Oct 15, 2016
@DaveTBlake

This comment has been minimized.

Copy link
Member Author

commented Oct 16, 2016

This just needs a sanity check, anyone?

The kind of smart playlist that would list artists, but then nothing beneath when you click on one is like this for composers. You need some music files in your library that have composer tagged, and the composer not an album or song artist.

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<smartplaylist type="artists">
<name>Role Composer</name>   
<match>all</match>
<rule field="role" operator="is">   
<value>Composer</value>
</rule>
</smartplaylist>
@DaveTBlake DaveTBlake added this to the Krypton 17.0-beta4 milestone Oct 19, 2016
@DaveTBlake

This comment has been minimized.

Copy link
Member Author

commented Oct 19, 2016

Any objections? I would like to get ths merged and composer etc. smart playlists working, rather than come up blank.

@DaveTBlake

This comment has been minimized.

Copy link
Member Author

commented Oct 20, 2016

jenkins build this please

@DaveTBlake DaveTBlake merged commit 4cfb52d into xbmc:master Oct 22, 2016
2 of 3 checks passed
2 of 3 checks passed
continuous-integration/travis-ci/pr The Travis CI build failed
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
jenkins4kodi You did a great job. Have a cookie.
Details
@DaveTBlake DaveTBlake deleted the DaveTBlake:DrillRoleRules branch Oct 22, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
1 participant
You can’t perform that action at this time.