From eeb776199b0fb772da8f50cf8f06df33c609545d Mon Sep 17 00:00:00 2001 From: Dan Barber Date: Tue, 12 Feb 2019 22:08:57 -0500 Subject: [PATCH] Improve display of blank albums * Add dark and light blank album image variants * Use CALayer to draw rounded corners and a tinted border on each album cover --- .../blankAlbum.imageset/Contents.json | 25 +++++++++++++++++- .../blankAlbum.imageset/blankAlbumDark.pdf | Bin 0 -> 4125 bytes .../{blankAlbum.pdf => blankAlbumLight-1.pdf} | Bin 4127 -> 4127 bytes Persephone/Resources/AlbumItem.xib | 2 ++ Persephone/Views/AlbumItem.swift | 8 ++++++ Resources/export/blankAlbumDark.pdf | Bin 0 -> 4125 bytes Resources/export/blankAlbumDark.png | Bin 0 -> 982 bytes Resources/export/blankAlbumDark@2x.png | Bin 0 -> 2396 bytes Resources/export/blankAlbumLight.pdf | Bin 0 -> 4127 bytes Resources/export/blankAlbumLight.png | Bin 0 -> 976 bytes Resources/export/blankAlbumLight@2x.png | Bin 0 -> 2455 bytes 11 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 Persephone/Assets.xcassets/blankAlbum.imageset/blankAlbumDark.pdf rename Persephone/Assets.xcassets/blankAlbum.imageset/{blankAlbum.pdf => blankAlbumLight-1.pdf} (87%) create mode 100644 Resources/export/blankAlbumDark.pdf create mode 100644 Resources/export/blankAlbumDark.png create mode 100644 Resources/export/blankAlbumDark@2x.png create mode 100644 Resources/export/blankAlbumLight.pdf create mode 100644 Resources/export/blankAlbumLight.png create mode 100644 Resources/export/blankAlbumLight@2x.png diff --git a/Persephone/Assets.xcassets/blankAlbum.imageset/Contents.json b/Persephone/Assets.xcassets/blankAlbum.imageset/Contents.json index f6c870a..120c648 100644 --- a/Persephone/Assets.xcassets/blankAlbum.imageset/Contents.json +++ b/Persephone/Assets.xcassets/blankAlbum.imageset/Contents.json @@ -1,12 +1,35 @@ { "images" : [ + { + "idiom" : "universal" + }, { "idiom" : "universal", - "filename" : "blankAlbum.pdf" + "filename" : "blankAlbumLight-1.pdf", + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "light" + } + ] + }, + { + "idiom" : "universal", + "filename" : "blankAlbumDark.pdf", + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ] } ], "info" : { "version" : 1, "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "original", + "preserves-vector-representation" : true } } \ No newline at end of file diff --git a/Persephone/Assets.xcassets/blankAlbum.imageset/blankAlbumDark.pdf b/Persephone/Assets.xcassets/blankAlbum.imageset/blankAlbumDark.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5b66161a7ae6ce9f99520586ad81ec497a62fcc2 GIT binary patch literal 4125 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 delta 465 zcmbQQFkfLpO#P}`8&xfz?_03E)*-`FG5W^4{|gtZlx^Zxb(wa2lS%SRH~Esq9+@jj zV%Jume&xDGaQl6%g4LMFjdj;TyiLj>N!b6rI_Mx_0iS_6Gh~c7IPQN^%Ken9}8A( z%x1pzIqIR%U(?wf(ih}SHk*ehD|y?@FyDOKrSIdKQ&I(cGTWv0D|ZKKKU(Yj?;NAL z^!;mV)PJpe@k!{Pbe5p<$Xqijjq(QL?e2xk+lOiG`7Q snz?C;frYt=9hVJ3B?_?$c6MCFC5c5P6-B9OT*l^x23)GDuKsRZ03cGw&Hw-a diff --git a/Persephone/Resources/AlbumItem.xib b/Persephone/Resources/AlbumItem.xib index 8920df3..8791f09 100644 --- a/Persephone/Resources/AlbumItem.xib +++ b/Persephone/Resources/AlbumItem.xib @@ -9,7 +9,9 @@ + + diff --git a/Persephone/Views/AlbumItem.swift b/Persephone/Views/AlbumItem.swift index 3b651d8..eadd9de 100644 --- a/Persephone/Views/AlbumItem.swift +++ b/Persephone/Views/AlbumItem.swift @@ -9,9 +9,16 @@ import Cocoa class AlbumItem: NSCollectionViewItem { + let albumCoverBorderColor = NSColor.init(calibratedWhite: 1, alpha: 0.1) + override func viewDidLoad() { super.viewDidLoad() // Do view setup here. + + albumCoverView.wantsLayer = true + albumCoverView.layer?.cornerRadius = 3 + albumCoverView.layer?.borderWidth = 1 + albumCoverView.layer?.borderColor = albumCoverBorderColor.cgColor } func setAlbum(_ album: MPDClient.Album) { @@ -19,6 +26,7 @@ class AlbumItem: NSCollectionViewItem { albumArtist.stringValue = album.artist } + @IBOutlet var albumCoverView: NSImageView! @IBOutlet var albumTitle: NSTextField! @IBOutlet var albumArtist: NSTextField! } diff --git a/Resources/export/blankAlbumDark.pdf b/Resources/export/blankAlbumDark.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5b66161a7ae6ce9f99520586ad81ec497a62fcc2 GIT binary patch literal 4125 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 literal 0 HcmV?d00001 diff --git a/Resources/export/blankAlbumDark@2x.png b/Resources/export/blankAlbumDark@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..a40a732847f8f587979ff5c1bcc024d59b19cda0 GIT binary patch literal 2396 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K5893O0R7}x|G$6&2?&#~tz_78O`%fY(0|Te9 zr;B4q1>@UWr}HM?6l)D+FI>*e>+nIK^8a_n!t6r!iHmzfyq6wolb>WEQ+s%BRME`) z^OE15Q7QBD^Y=ermdC=O!n#g1nA^AEKsh7p0|fyNZjFWypIp@!Fw9|ON@Qdeh}-vq zMWn&lK|yB$!=cmSa~qfn*f?5PMI0)AE)ou4ILFYqp@E4*KfZ*C>wu(!fLH*-!>8ST z4vZGeEQgr56!z3y;2JckYe(OM|K1O7ZOz`z&M)`o z-MziLch~;@_U`rd^}D~nzyCgNZ`Ib{UtV5bX7E}H$iIJgclmp-^&4Lvt-7$3YtEc` z^XA3AGT!l{mGjQd;`HxNPENjicD8x_j%PP--hB7-^Yh);*T?_=@c&=!@%8IIzPY*i z?rih?e}Db!W`uvVsr~gOX8q&#?p=?)SpIMosJ_|%f643J-xlisE8RMI^5naR+xhp` zhufEY)xBQv<;6w)^@T6G>tDaN`10#ceGMaPLCt6Ts$*Z1|L=SM=l|XtznJVwqV2!Q zzn1Ekx3~LZbmzY~r$)p63`zTH&DZ7sbhk%u&wHD9XUE3x3&Gsd-q+W^@3-CZRcdtx zUu^Q}><=>@b7(X?wwV7r^4j~m(fRFi)i3_lUXOh*`eygvbEb9AH~yY?x^}w$0tUVN zKb+o=em_ww)U$gcVMDfRu=j^)WC6io<2+$uQ&pz9q{57Y(_R9Cwx4Xsl`Rr0&o5t;{ zsZ_jv<5LyC-NgTe2xZFize@f+pZEUW-rq0pGp@;AvtRVb&9`rFZ@>S4#fuBcdXJ>q z*S-DsnEOrr>hC|+A2!Yth^Sw%c^|`d_uAKUf7R!`KK}OW-1@(Q7uN54z3zC;pC5(q zO|Joi$6gg^Ry-@vx&Lcrqt|~tpZ)#*YS9nV8^T}zKYo6n-K*&Lo7Ugo9IpB2#`laot&I-;4vb&Q^b8vX0~nkW z6)pe^%e`~GeG*ti4g^SWd|?rB$bT**EWyZXAi~CE%gB1+_Rb?LZVsbbM}uiJNsym& a9@I0k^0_iwq__f`OAMZ_elF{r5}E)Q4vJR* literal 0 HcmV?d00001 diff --git a/Resources/export/blankAlbumLight.pdf b/Resources/export/blankAlbumLight.pdf new file mode 100644 index 0000000000000000000000000000000000000000..a79b29186f5f26fdceb63e2a1552c5398192879d GIT binary patch literal 4127 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 UbZKli1f~pyfF&h$(R$$j0J25~4*&oF literal 0 HcmV?d00001 diff --git a/Resources/export/blankAlbumLight.png b/Resources/export/blankAlbumLight.png new file mode 100644 index 0000000000000000000000000000000000000000..e5a4f9f8591282a1edd88ba84a075812cd39a8e8 GIT binary patch literal 976 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSEa{HEjtmSN`?>!lvNA9*w|lxc zhEy=Vo#vaZ6e!{nZ*s9!NpVK+|Ns4(KQ?kYDl2)KJmk#1b%tlAtE0y2FUPj!o{kP} zzkP2_*y{d6g0mgeuUQ`R=VWlO-~bx_khA4>Ix~Yq1=GWCHyIcN<~i)BHDh3CQ5VRY z&pXtm_wRN4fBf-A9kK3BH*>tU-`4H#?|=I6;lo3(%699Xe!6MTzJ1dk7DT8`_T0I9 zxApzc_EOJh_xi8flBTR%KovDAP0v%mKG>(8LSd&KVBmF&`(f{RbY;C7*-@e^Qg6GuVzkiQD z|9aM6s=nsnheKDH5^fw_-%~TSzaif9(ieBe16wSv-e6eZbt#0M!KXX8mzQCcif<{y fs4&@K@|Tm` zYb8pYHT}UMGtQ#&14LRXt56cSYa3%&vdv16RcL9a45(tErMm)c>3M&~e&|onlRU}u zaJoK(Ob0{R8bRpHp;n)ez>eQyrvyp6b*kJt6TiBqdG?+ zS18=CieThC-*>!p^7~A*Bo_tG>YdFHbf#oe=1K}Rx>0I}U%OL0xmv{I%6!ZYxflH^3u|! zrrE9uF`nETVKk8pPsAW77bz)UXmvlj;pOL8afsjq1M}Veo3@z0Ek%E7v)MuqzA5(h zXBVgo%VK$(id?OgHjshjrpH|2r!Z}*@FuC+>oV#cGVx zBP(8_+{U&`65um4^NXIqj1dcwn(ftkv1XgxY~jsO_y##wv5*+Amw-m=hEls6zs5{h zy>@GAT^`TVZ23y3-rt@%1wq%PVMl`+8{59+u{7A#jsee(;qrReWYB@TB~1GOjiqP{ zr6f&a?Ns6`+8{t3J(k@NIlh{wb;lyJPOJ4);L98JJTvjwM!AU~9scW=D1rXGYoZOb zI4-qT8&9_OpL<+pY9FPTK|wfMf5%TWwqgPt`@9vKWD+gdC8gtPHnyHh`RM?uGAoH- zG1FPO`gb(BcLhP552l&+Mf&s26P6ME+$9D;Hmu30Z1(JS;jg$`Y>gg?Uteo89Z3G1+%4K>x7Fq(}#=xyo`> m&tfy(Agw{#2T$28Bs1zR9BBHMMrPPg3)H+WmyMrm{`h}|3!3-< literal 0 HcmV?d00001