diff --git a/Application/PlaybackEventController.m b/Application/PlaybackEventController.m
index 64f02741e..e0c56a387 100644
--- a/Application/PlaybackEventController.m
+++ b/Application/PlaybackEventController.m
@@ -174,6 +174,37 @@ didReceiveNotificationResponse:(UNNotificationResponse *)response
content.sound = nil;
content.categoryIdentifier = @"play";
+ if ([defaults boolForKey:@"notifications.show-album-art"] && [pe albumArtInternal]) {
+ NSError *error = nil;
+ NSFileManager *fileManager = [NSFileManager defaultManager];
+ NSURL *tmpSubFolderURL = [[NSURL fileURLWithPath:NSTemporaryDirectory()]
+ URLByAppendingPathComponent:@"cog-artworks-cache" isDirectory:true];
+ if ([fileManager createDirectoryAtPath:[tmpSubFolderURL path]
+ withIntermediateDirectories:true
+ attributes:nil
+ error:&error]) {
+ NSString *tmpFileName = [[NSProcessInfo.processInfo globallyUniqueString] stringByAppendingString:@".jpg"];
+ NSURL *fileURL = [tmpSubFolderURL URLByAppendingPathComponent:tmpFileName];
+ NSImage *image = [pe albumArt];
+ CGImageRef cgRef = [image CGImageForProposedRect:NULL context:nil hints:nil];
+ NSBitmapImageRep *newRep = [[NSBitmapImageRep alloc] initWithCGImage:cgRef];
+ NSData *jpgData = [newRep representationUsingType:NSBitmapImageFileTypeJPEG
+ properties:@{NSImageCompressionFactor: @0.5f}];
+ [jpgData writeToURL:fileURL atomically:YES];
+
+ UNNotificationAttachment *icon = [UNNotificationAttachment attachmentWithIdentifier:@"art"
+ URL:fileURL
+ options:nil
+ error:&error];
+ if (error) {
+ // We have size limit of 10MB per image attachment.
+ NSLog(@"%@", error.localizedDescription);
+ } else {
+ content.attachments = @[icon];
+ }
+ }
+ }
+
UNNotificationRequest * request = [UNNotificationRequest requestWithIdentifier:@"PlayTrack" content:content trigger:nil];
[center addNotificationRequest:request withCompletionHandler:^(NSError * _Nullable error) {
diff --git a/Preferences/General/Base.lproj/Preferences.xib b/Preferences/General/Base.lproj/Preferences.xib
index 2b9a6c667..59a8d00b3 100644
--- a/Preferences/General/Base.lproj/Preferences.xib
+++ b/Preferences/General/Base.lproj/Preferences.xib
@@ -11,6 +11,7 @@
+
@@ -400,12 +401,12 @@
-
+