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

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 DaveTBlake added Type: Fix non-breaking change which fixes an issue v17 Krypton Component: Music labels Oct 13, 2016
@DaveTBlake
Copy link
Member Author

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
Copy link
Member Author

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
Copy link
Member Author

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

@DaveTBlake
Copy link
Member Author

jenkins build this please

@DaveTBlake DaveTBlake merged commit 4cfb52d into xbmc:master Oct 22, 2016
@DaveTBlake DaveTBlake deleted the DrillRoleRules branch October 22, 2016 09:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Music Type: Fix non-breaking change which fixes an issue v17 Krypton
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant