diff --git a/Mac/Components/Browser/Album Detail/AlbumDetailView+NSTableViewDelegate.swift b/Mac/Components/Browser/Album Detail/AlbumDetailView+NSTableViewDelegate.swift index 162c73d..ffbe588 100644 --- a/Mac/Components/Browser/Album Detail/AlbumDetailView+NSTableViewDelegate.swift +++ b/Mac/Components/Browser/Album Detail/AlbumDetailView+NSTableViewDelegate.swift @@ -83,7 +83,14 @@ extension AlbumDetailView: NSTableViewDelegate { owner: self ) as! NSTableCellView - cellView.textField?.stringValue = song.title + if song.artist != song.album.artist { + let string = NSMutableAttributedString() + string.append(NSAttributedString(string: song.title)) + string.append(NSAttributedString(string: " – " + song.artist, attributes: [.foregroundColor: NSColor.secondaryLabelColor])) + cellView.textField?.attributedStringValue = string + } else { + cellView.textField?.stringValue = song.title + } return cellView } diff --git a/Shared/MPDClient/Extensions/MPDClient+Album.swift b/Shared/MPDClient/Extensions/MPDClient+Album.swift index a826e23..bda8abc 100644 --- a/Shared/MPDClient/Extensions/MPDClient+Album.swift +++ b/Shared/MPDClient/Extensions/MPDClient+Album.swift @@ -73,7 +73,7 @@ extension MPDClient { let mpdAlbum = MPDAlbum( title: mpdSong.album.title, - artist: mpdSong.artist, + artist: mpdSong.album.artist, firstSong: mpdSong, date: mpdSong.date ) diff --git a/Shared/MPDClient/Models/MPDSong.swift b/Shared/MPDClient/Models/MPDSong.swift index 47137ea..d4662e7 100644 --- a/Shared/MPDClient/Models/MPDSong.swift +++ b/Shared/MPDClient/Models/MPDSong.swift @@ -36,17 +36,22 @@ extension MPDClient { var album: MPDAlbum { return MPDAlbum( title: getTag(.album), - artist: artist, + artist: albumArtist, date: date ) } var artist: String { - if getTag(.albumArtist) != "" { - return getTag(.albumArtist) - } else { - return getTag(.artist) - } + return getTag(.artist) + } + + var albumArtist: String { + let albumArtist = getTag(.albumArtist); + if albumArtist != "" { + return albumArtist + } else { + return artist + } } var date: String {