From cb1156fe01012a0c332ad9eb9cfd01816acb001a Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 13 Mar 2018 15:40:43 +0100 Subject: [PATCH] Show the next alarm time on the widget --- .../clock/helpers/MyWidgetDateTimeProvider.kt | 8 ++ app/src/main/res/layout/widget_date_time.xml | 69 ++++++++++----- .../layout/widget_date_time_with_shadow.xml | 88 +++++++++++++------ app/src/main/res/values/dimens.xml | 2 + 4 files changed, 119 insertions(+), 48 deletions(-) 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 77edd0fe..2bcbbfcf 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.provider.Settings import android.widget.RemoteViews import com.simplemobiletools.clock.R import com.simplemobiletools.clock.activities.SplashActivity @@ -13,6 +14,7 @@ import com.simplemobiletools.clock.extensions.config import com.simplemobiletools.clock.extensions.getFormattedDate import com.simplemobiletools.clock.extensions.getFormattedTime import com.simplemobiletools.clock.extensions.scheduleNextWidgetUpdate +import com.simplemobiletools.commons.extensions.getColoredBitmap import com.simplemobiletools.commons.extensions.setBackgroundColor import com.simplemobiletools.commons.extensions.setText import com.simplemobiletools.commons.extensions.setVisibleIf @@ -58,6 +60,10 @@ class MyWidgetDateTimeProvider : AppWidgetProvider() { } setText(R.id.widget_date, context.getFormattedDate(calendar)) setVisibleIf(R.id.widget_time_am_pm, !use24HourFormat) + + val nextAlarm = Settings.System.getString(context.contentResolver, Settings.System.NEXT_ALARM_FORMATTED) + setVisibleIf(R.id.widget_next_alarm, nextAlarm.isNotEmpty()) + setText(R.id.widget_next_alarm, nextAlarm) } } @@ -71,6 +77,8 @@ class MyWidgetDateTimeProvider : AppWidgetProvider() { setTextColor(R.id.widget_time, widgetTextColor) 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)) } } diff --git a/app/src/main/res/layout/widget_date_time.xml b/app/src/main/res/layout/widget_date_time.xml index ea158592..a7ec5d1c 100644 --- a/app/src/main/res/layout/widget_date_time.xml +++ b/app/src/main/res/layout/widget_date_time.xml @@ -6,35 +6,64 @@ android:layout_width="match_parent" android:layout_height="wrap_content"> - + android:gravity="center_horizontal"> - + + + + + + + + + + + diff --git a/app/src/main/res/layout/widget_date_time_with_shadow.xml b/app/src/main/res/layout/widget_date_time_with_shadow.xml index ce7b7a95..e4db1eed 100644 --- a/app/src/main/res/layout/widget_date_time_with_shadow.xml +++ b/app/src/main/res/layout/widget_date_time_with_shadow.xml @@ -6,44 +6,76 @@ android:layout_width="match_parent" android:layout_height="wrap_content"> + + + + + + + - - - - + + + + + + + diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index 68654e9d..51d9b7e2 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -3,6 +3,8 @@ 60dp 64dp 80dp + 18dp + 50dp 30dp 180dp 110dp