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 00000000..0f9abfab Binary files /dev/null and b/app/src/main/res/drawable-hdpi/ic_clock_shadowed.png differ 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 00000000..f191a195 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_clock_shadowed.png differ 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 00000000..1a6bb6a2 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/ic_clock_shadowed.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/ic_clock_shadowed.png b/app/src/main/res/drawable-xxxhdpi/ic_clock_shadowed.png new file mode 100644 index 00000000..7654398c Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/ic_clock_shadowed.png differ