[3.34] grltrackerplaylists: Restore smart playlists update
This feature was lost during the core rewrite.
Everytime a change is triggered, two smart playlists might need to be updated:
- the PlayerPlaylist (active_playlist)
- the currently actively viewed playlist Besides, a smart playlist needs to be updated every time it becomes visible.
An update method is introduced to update a smart playlist content. The model of the SmartPlaylist is queried and compared with the previous one to perform the correct insert and remove operations.