From e38bd8e660abfff36a34e4cde87d23927c9582b7 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 13 Mar 2018 21:55:17 +0100 Subject: [PATCH] adding a shadowed version of the Next alarm image on the widget --- .../clock/helpers/MyWidgetDateTimeProvider.kt | 21 +++++++++++++++++- .../res/drawable-hdpi/ic_clock_shadowed.png | Bin 0 -> 1742 bytes .../res/drawable-xhdpi/ic_clock_shadowed.png | Bin 0 -> 2434 bytes .../res/drawable-xxhdpi/ic_clock_shadowed.png | Bin 0 -> 4885 bytes .../drawable-xxxhdpi/ic_clock_shadowed.png | Bin 0 -> 6598 bytes 5 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 app/src/main/res/drawable-hdpi/ic_clock_shadowed.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_clock_shadowed.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_clock_shadowed.png create mode 100644 app/src/main/res/drawable-xxxhdpi/ic_clock_shadowed.png diff --git a/app/src/main/kotlin/com/simplemobiletools/clock/helpers/MyWidgetDateTimeProvider.kt b/app/src/main/kotlin/com/simplemobiletools/clock/helpers/MyWidgetDateTimeProvider.kt index 7b4ab9ef..58c0f73e 100644 --- a/app/src/main/kotlin/com/simplemobiletools/clock/helpers/MyWidgetDateTimeProvider.kt +++ b/app/src/main/kotlin/com/simplemobiletools/clock/helpers/MyWidgetDateTimeProvider.kt @@ -6,6 +6,7 @@ import android.appwidget.AppWidgetProvider import android.content.ComponentName import android.content.Context import android.content.Intent +import android.graphics.* import android.widget.RemoteViews import com.simplemobiletools.clock.R import com.simplemobiletools.clock.activities.SplashActivity @@ -74,7 +75,13 @@ class MyWidgetDateTimeProvider : AppWidgetProvider() { setTextColor(R.id.widget_time_am_pm, widgetTextColor) setTextColor(R.id.widget_date, widgetTextColor) setTextColor(R.id.widget_next_alarm, widgetTextColor) - setImageViewBitmap(R.id.widget_next_alarm_image, context.resources.getColoredBitmap(R.drawable.ic_clock, widgetTextColor)) + + if (context.config.useTextShadow) { + val bitmap = getMultiplyColoredBitmap(R.drawable.ic_clock_shadowed, widgetTextColor, context) + setImageViewBitmap(R.id.widget_next_alarm_image, bitmap) + } else { + setImageViewBitmap(R.id.widget_next_alarm_image, context.resources.getColoredBitmap(R.drawable.ic_clock, widgetTextColor)) + } } } @@ -121,4 +128,16 @@ class MyWidgetDateTimeProvider : AppWidgetProvider() { else -> nextAlarm } } + + fun getMultiplyColoredBitmap(resourceId: Int, newColor: Int, context: Context): Bitmap { + val options = BitmapFactory.Options() + options.inMutable = true + val bmp = BitmapFactory.decodeResource(context.resources, resourceId, options) + val paint = Paint() + val filter = PorterDuffColorFilter(newColor, PorterDuff.Mode.MULTIPLY) + paint.colorFilter = filter + val canvas = Canvas(bmp) + canvas.drawBitmap(bmp, 0f, 0f, paint) + return bmp + } } diff --git a/app/src/main/res/drawable-hdpi/ic_clock_shadowed.png b/app/src/main/res/drawable-hdpi/ic_clock_shadowed.png new file mode 100644 index 0000000000000000000000000000000000000000..0f9abfab4287cf3e024f0299b5ae6d2b79c797b0 GIT binary patch literal 1742 zcmV;<1~K`GP)Tjv?a|3^CdXex)OvgMPcp{C7NNS2mN&YZcdW^`Ld3K_C{*TsdFI5&a8 zV7@V#1-a>kA%#)cMJvU*Fx1^jn#IB3&WTyKObT9%L3Xw{v1mhev|6%dDYA~v(fi+p z&yiJs$RA02wLhGjbKd89f9E{s`FMf(A0MBOMx$R%O--d#Rm}l_ zq9}ET4jpQ2X=&LP2n4*1jg8K#J<0(30sKyqq|8pfOoI^On)!w#DN?Cav9GUhA`l3? z=ka(t02~Ie7l7Bi_5wKU@pw7{fxvrxeSH(DRH{0>2Fa@=>$eNzGz{a<)i7gYV`^(_ z>-zwj0qjEUuPd2rnp<02-ya(rQ>&oLLWqy!@wjtKFoT1Gc3szdEeApfF)%O?_j-D~lm0I%+kvv55 zSGunMgv)hlJvqEy@9QHYBbCGuLd+Ekh2u40;_6Vt3x3Tg=ua=~$ z>K{n*(W6JVL!r>F8t&~aEiG>+5{b0sU)S}))uH=F8Y+qsu-omw003RrMSp+)N6~0> z5X%{|F3{rQ;w}Iv7K^TX_wLCxfXdNmbg;j_|07-31pwG=wiAk?1U3Y6I2`SgB-H`H z?Ck89LqkJh0Qnl5Y*+cAp`q~X?Ch5$VYAul91chOxFMdTVHoo(TT9Qb0a{vGsuVq0mX~y0U)s(lvMjsX z+uOHPICWiLl4ZH#zk2TqP&S(_RXKOIwY6lRT< zZEbCKS(YpHr+V)SP$H2?!Te`rS@tzIH`i@}hv&|nyLsu-rGFO+1xS)~9Ka_4{z&qB z8yPh>H`mFs>;nL^0H@Y0>gwt`lFerGR?C>2oNU_y5U@PLzH;*9$^M%+ZzeTOE1P{# zCD}vrnbii9lap;$3(01)`L3?6BWt`WiqbGMGc#qC^@W9ncSE7jrUO-#{QLLsf2+H@ z`?LG^@8`RXU?4I$Ye5$ z)?!W5y0-~r$t}zBt0zvJ`0(Pzi(>~49Qc9tK-08t>!mZ9%;MRzXWKXQQeR)ccX)Vs zv}zVg=JWZNcL*f`sCPP@N3i_mkk98|7D6PgnP_-;c(kFRL8;}$*3r@Nma3{*%SZ_E zFOqw92vrfuJ*F=~lF4K;8w>_Jv8utZCvQ(r&xe|(8C6jKB>BQ)z`S7k5F}YF7LA^s zo)54*hi@*Y(|I@?4*#Q6Dpf=MhvXY1-J5%;fVfG%VcJ^BVuZutzdN1I!`pc&$?y07 z{PN|?Dj| zD0%wy>A(1VzFz}aw;He3cH(FQ;J4fD#}6Jn_{ygpT-kjv%t zhYug-@7%fb#qHa-Cm%d`@Oimhjso}^fOyhC)i!Pb&j4t2xm-S*&E^3BAw*u&v^fC( k1(3n=2>h)~o!^=M2eSF;VvK+nwg3PC07*qoM6N<$f;E6zs{jB1 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/ic_clock_shadowed.png b/app/src/main/res/drawable-xhdpi/ic_clock_shadowed.png new file mode 100644 index 0000000000000000000000000000000000000000..f191a1956492e712105f3b616197fbf3f888ea1a GIT binary patch literal 2434 zcmV-|34Qj7P)F*^;Vvim@iuCpM1?_fwz~OL&1A#yc0CID4 zbtNSw*%cKPxfY9MS$TPRmR_&tr!W%(&;+2C6z-EQ~!e2)PP1MmTeB&uZr$Oo`CKR>^;qN1YW;K75X`}gl(m7kxV?hHmm?Sdfu zG&?(cEE9e+A`}X(VvKbX5mOJjBuPqRW8;X~Y`($s{80dJ1IR;s>72?jT;g3GfVX*` zKWa9cZ!|VGj!2TEyc$vLE)f+hh&&NxGsare$$LB=@xXxt?K++Aw*X2oMMz};9e@&@ zPWPJw2M)A*JRUJ!ge=QnyWQ^Wd6BQLujga2*jXY<@y^iD&+7eQFEc|F#UBw-P)*+Da)m1^D=#9x=Fd2Ph)737dLqhX zbT|Ozm6eqjT`pHREtZ0!D84@@@_xTRCl-s{Rd*B&2Bp1w_g)21Ive@1v9T3I)J#Ne zM0CsPbmnC!qIB=xy;p<5prp1Pi^bX<4o6PL0)oNdr;M?fdPZ5T);j>U%|;#o&YwU3 zLs^!CL_~_Bh^J1SD$md~2Vk4kYQ4i4V=DWxU@-XUR1IE+|AY94=5-@BJUo26si~<|QIw>!bUNL(?Ck7!(krJ6 z;Igu^KH_;knUp!5&WVPjgB3w4IIZMV=NMh`2BwW==0+=XIw~pSBXwI~3nXXN;{|w?ePi zr-+wjnJ|q2^7(whG~>&vs;V;miY75IFd({IuIG#~;y8{o7!2)NYOkFlUJ|2W>Nly{ra=Au`DEZQ0Fsxj+Ze8X{R06kd-E!~Rwd)@jE?jv0?AbFZ zQM`ob`4a&COGG~>q9wESQ&?D-Ycv{HPChfn$mMd4V7hNoZEfwIKp+rOB~eOGPtON) z6@d54iD);?u!-;K>G^;$mfVj70)bF%ZS9_EtyWi8 zmpL4cA$2P2@p#T+{^v(J0A`cP^oJuyj@*6t@L@15%Y05m4MenIDkpe6p0jE$4u@l? zy1Ke-CWCoxZEY>;MuH$b?C9uNK2HIYSPJ01_3PJve(v140guNMP0RPc>+kPR+5dKQ zbSxJH;i0--TU%QT;(O|8p{uK_`%DzYn5v!Z^?E;9pa38~-wHJv&Cho4-rd~N((+Uk zMI}M3W6hd1DU;jl^?pJ`$*>beF;-Vs_Zeo}e^*vk?y%eKPPKALlDfQJ@2rz9L+Ali zJap*L-P^ZsyLax~`FjA#)z0hnE|DauOU=PE33}Lz;dhAdPSCH^=4j) zL?R~^Nx&qQ0@#zAn_CNDz4}EY5;;Mt!vtBDl{06~T*fTnGYNk4=FLCp@9!T|dw?Z@)=QCOOY!Duu(<5D&sM5EC%MNtMx zbuJ{!GP`o+%D0H$JIr}0Hx?Ea9&T@MA5pK}35*iaKAPi6@>C!qZKAKyG)J*JckT=q z6cqddncq9Sf)!@7`H#K5y%UsnyhubM5q&9&;wGA7l9nLOC)$3Q=qrVPZ*T8-Sy@>< z<`_Ctp}3-=;?MW*-yff1B#4N-MD$l8+D=3{L^SPC6A_oFvpvzqo8B2?jCFQ)dd+6@ zSpaJnN*;*E-umL=;y>NIdD9h(#nMlb)g#hFL|+imuZieGBHESseV8cwf{41O@Hi30 zPrPs3xZzy8cI{~ZZ!HFSHCCHUrrMJyPxg+EjtbL=m^X%phlRSjx^9EP@H@m4!PkPN z0QPO!vgO+4%a@%K6BE(dsm+Y>@$u-TOP8KlES9T?UluOb7k^r40c_OibjP-D-`;%g z+_^!U&Guq4ugL_0ASiu(eL<_$I#^Xz^)HP^^Gg65@bX?cV=UyJ*ogRj@Vf;C1@D%Y zmX`0>v7^XhvE;2@z1ozQm!~zEOdMkjk|Z&|->-~}j0iTH&EMJCIW{;rX!m$LT>!pC z{Qh`em*9(W(X9or3_ua$UVLlGk|jSdnM^ratyT{JvMfghL3kbtg}eZq02~0G0(cHU zS%~q){;L58K!bS3sYmKx4Wz_R!J9p%{Qt)P0Nm@qP)X`lX8-^I07*qoM6N<$g7gxE A;Q#;t literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/ic_clock_shadowed.png b/app/src/main/res/drawable-xxhdpi/ic_clock_shadowed.png new file mode 100644 index 0000000000000000000000000000000000000000..1a6bb6a26005a4923ba0cfd85b097381a94c21db GIT binary patch literal 4885 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