Add Core objects thumbnail property for art lookup
Basically this turns CoreSong
/CoreAlbum
/CoreArtist
art lookup into a property lookup. All mentioned core objects have a thumbnail property that on first request starts an art lookup. Consumers then just listen to the thumbnail property notifications and update accordingly, this is only ArtStack
currently (former CoverStack
/ArtistArtStack
).
The thumbnail property is a path, in Trackers case to the MediaArt
cache file. It can also contain the special values loading and generic which indicate that either a loading icon or a generic icon is to be shown respectively.
This comes together with a bunch of renames to make things more obvious, also reordering and picking apart certain classes/functionalities, making for quite a difficult MR.
The main point of this -besides cleanliness- is to make our transition to GTK4 easier, where the intertwined lookup/loading code would probably have hampered the use of the new *view widgets.
Update (july 3rd)
Paths and uri's were used mixed, which could be confusing at times. The thumbnail property is now a uri. This also matches with how Grilo presents it, which might be a bonus in conjunction with other sources than Tracker.