diff --git a/ChangeLog b/ChangeLog index 655328578..7e7a0c772 100644 --- a/ChangeLog +++ b/ChangeLog @@ -37,6 +37,7 @@ some styles (e.g. Adwaita-Qt) 26. Enable remote (sshfs, samba) device support by default for Linux builds. 27. Improve table style playqueue drop indicator - thanks to padertux. +28. Don't show year for 'Single Tracks' 2.2.0 ----- diff --git a/db/librarydb.cpp b/db/librarydb.cpp index e1e11a623..6368ec472 100644 --- a/db/librarydb.cpp +++ b/db/librarydb.cpp @@ -742,7 +742,7 @@ QList LibraryDb::getAlbums(const QString &artistId, const QStr for (int i=0; i LibraryDb::getAlbums(const QString &artistId, const QStr query.addWhere("genre", genreFilter); } query.exec(); - DBUG << query.executedQuery() << timer.elapsed(); int count=0; QMap entries; - QMap > albumIdArtists; // MAp of albumId -> albumartists/composers + QMap > albumIdArtists; // Map of albumId -> albumartists/composers while (query.next()) { count++; int col=0; @@ -782,8 +781,15 @@ QList LibraryDb::getAlbums(const QString &artistId, const QStr s.addGenre(genre); } } - album=s.displayAlbum(); + s.type=(Song::Type)query.value(col++).toInt(); + qWarning() << s.artist << s.type; int year=query.value(col++).toInt(); + if (Song::SingleTracks==s.type) { + s.album=Song::singleTracks(); + s.albumartist=Song::variousArtists(); + year = 0; + } + album=s.displayAlbum(); int time=query.value(col++).toInt(); int lastModified=wantModified ? query.value(col++).toInt() : 0; QString artist=wantArtist ? query.value(col++).toString() : QString(); diff --git a/mpd-interface/mpdparseutils.cpp b/mpd-interface/mpdparseutils.cpp index 10884727d..457d75931 100644 --- a/mpd-interface/mpdparseutils.cpp +++ b/mpd-interface/mpdparseutils.cpp @@ -733,7 +733,8 @@ void MPDParseUtils::parseDirItems(const QByteArray &data, const QString &mpdDir, } else { if (setSingleTracks) { currentSong.albumartist=Song::variousArtists(); - currentSong.album=QObject::tr("Single Tracks"); + currentSong.album=Song::singleTracks(); + currentSong.type=Song::SingleTracks; } currentSong.fillEmptyFields(); songs.append(currentSong); diff --git a/mpd-interface/song.cpp b/mpd-interface/song.cpp index 3851d2e5e..a08ef9e25 100644 --- a/mpd-interface/song.cpp +++ b/mpd-interface/song.cpp @@ -45,6 +45,7 @@ const QString Song::constForkedDaapdLocal=QLatin1String("file:"); static QString unknownStr; static QString variousArtistsStr; +static QString singleTracksStr; const QString & Song::unknown() { return unknownStr; @@ -55,10 +56,16 @@ const QString & Song::variousArtists() return variousArtistsStr; } +const QString & Song::singleTracks() +{ + return singleTracksStr; +} + void Song::initTranslations() { unknownStr=QObject::tr("Unknown"); variousArtistsStr=QObject::tr("Various Artists"); + singleTracksStr=QObject::tr("Single Tracks"); } // When displaying albums, we use the 1st track's year as the year of the album. diff --git a/mpd-interface/song.h b/mpd-interface/song.h index 10830c4cd..50d08f9fc 100644 --- a/mpd-interface/song.h +++ b/mpd-interface/song.h @@ -118,6 +118,7 @@ struct Song static const QString & unknown(); static const QString & variousArtists(); + static const QString & singleTracks(); static void initTranslations(); static const QString constCddaProtocol; static const QString constMopidyLocal;