Summary: | Context Browser doesn't show compilation cover images | ||
---|---|---|---|
Product: | [Applications] amarok | Reporter: | Ypsilon <webmaster> |
Component: | Context View | Assignee: | Amarok Developers <amarok-bugs-dist> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | NOR | ||
Version: | 1.4.4 | ||
Target Milestone: | --- | ||
Platform: | Gentoo Packages | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Attachments: | fixes cover storage/lookup of compilations |
Description
Ypsilon
2006-11-04 18:24:51 UTC
Which Amarok version? I'm sorry I forgot that. Component should be "Context Browser" and version is 1.4.4. I have also tried latest SVN. The reason is that the cover is only assigned to the first track in the compilation. But shouldn't then the first track of a compilation have the a cover image shown in the ContextBrowser? Over here that is not the case, the first song is not handled in a different way compared to the others. The CoverManager shows "Various Artists - [Name of compilation]" for the item that a compilation cover image blongs to, when you hover the thumbnail. So I just assume that this is the name under which compilation cover images are saved and recognized. Hmm, i assigned the cover via context browser: Expand the Various Artists group, right click on the compilation and then assign a cover. I tried this a few times and the cover gets always assigned to the first track of the compilation. Maybe this behavior is different from assigning the cover in the cover manager..? I can't reproduce that over here with SVN version from this evening. Assigning a cover in the Collection Browser does not change anything. I also feel the storage of the cover images is already right and good as it is. It does of course make sense to save a compilation cover image under "Various Artists - [name of compilation]". It's just the ContextBrowser which has apparently been forgotten to adjust to amarok's compilation recognizing support and therefore looks for the cover images under the wrong names. Created attachment 18881 [details]
fixes cover storage/lookup of compilations
This patch changes the behavior of storing covers of compilations fetched from
amazon. the covers are now hashed by an empty artist (as they were already
looked up by findAmazonImage()). This patch does not affect the lookup of
directory covers.
SVN commit 612402 by markey: Improved cover images handling for Various Artists. Patch by Tobias Knieper <tobias.knieper@micekiller.de>. This patch changes the behavior of storing covers of compilations fetched from amazon. the covers are now hashed by an empty artist (as they were already looked up by findAmazonImage()). This patch does not affect the lookup of directory covers. BUG: 136833 M +2 -0 ChangeLog M +8 -5 src/collectiondb.cpp --- trunk/extragear/multimedia/amarok/ChangeLog #612401:612402 @@ -60,6 +60,8 @@ * Amarok now saves playlists with relative paths by default. BUGFIXES: + * Improved cover images handling for Various Artists. Patch by Tobias + Knieper <tobias.knieper@micekiller.de>. (BR 136833) * Don't enable a mount point for devices that can't support them (mtp, njb). * With SQLite, the search in the collection browser was case-sensitive --- trunk/extragear/multimedia/amarok/src/collectiondb.cpp #612401:612402 @@ -1849,17 +1849,20 @@ //show a wait cursor for the duration Amarok::OverrideCursor keep; + const bool isCompilation = albumIsCompilation( QString::number( albumID( album, false, false, true ) ) ); + const QString artist_ = isCompilation ? "" : artist; + // remove existing album covers - removeAlbumImage( artist, album ); + removeAlbumImage( artist_, album ); - QCString key = md5sum( artist, album ); + QCString key = md5sum( artist_, album ); newAmazonReloadDate(asin, AmarokConfig::amazonLocale(), key); // Save Amazon product page URL as embedded string, for later retreival if ( !amazonUrl.isEmpty() ) img.setText( "amazon-url", 0, amazonUrl ); const bool b = img.save( largeCoverDir().filePath( key ), "PNG"); - emit coverChanged( artist, album ); + emit coverChanged( artist_, album ); return b; } @@ -1968,7 +1971,7 @@ s = findAmazonImage( artist, album, width ); if( s.isEmpty() ) - s = findAmazonImage( "", album, width ); + s = findAmazonImage( "", album, width ); // handle compilations if( s.isEmpty() ) s = findDirectoryImage( artist, album, width ); @@ -2015,7 +2018,7 @@ if( s.isEmpty() ) s = findAmazonImage( artist, album, width ); if( s.isEmpty() ) - s = findAmazonImage( "", album, width ); + s = findAmazonImage( "", album, width ); // handle compilations if( s.isEmpty() ) s = findDirectoryImage( artist, album, width ); if( s.isEmpty() ) |