aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/kotlin/com/pitchedapps/frost/widgets
diff options
context:
space:
mode:
authorAllan Wang <me@allanwang.ca>2019-04-24 19:51:37 -0700
committerAllan Wang <me@allanwang.ca>2019-04-24 19:51:37 -0700
commit14578e26fcd39cf671aa4584d3abf311a66afba2 (patch)
tree38e30cd48f78aa713770f5ff623cd443c05bd9ca /app/src/main/kotlin/com/pitchedapps/frost/widgets
parent27d1b98330c25e8833279ed48a4d9bd7d7566d10 (diff)
downloadfrost-14578e26fcd39cf671aa4584d3abf311a66afba2.tar.gz
frost-14578e26fcd39cf671aa4584d3abf311a66afba2.tar.bz2
frost-14578e26fcd39cf671aa4584d3abf311a66afba2.zip
Apply updates from services
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/widgets')
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/widgets/NotificationWidget.kt14
1 files changed, 14 insertions, 0 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/widgets/NotificationWidget.kt b/app/src/main/kotlin/com/pitchedapps/frost/widgets/NotificationWidget.kt
index 1897b042..57cc4fe1 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/widgets/NotificationWidget.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/widgets/NotificationWidget.kt
@@ -19,6 +19,7 @@ package com.pitchedapps.frost.widgets
import android.app.PendingIntent
import android.appwidget.AppWidgetManager
import android.appwidget.AppWidgetProvider
+import android.content.ComponentName
import android.content.Context
import android.content.Intent
import android.graphics.Bitmap
@@ -51,6 +52,7 @@ import org.koin.standalone.KoinComponent
import org.koin.standalone.inject
class NotificationWidget : AppWidgetProvider() {
+
override fun onUpdate(context: Context, appWidgetManager: AppWidgetManager, appWidgetIds: IntArray) {
super.onUpdate(context, appWidgetManager, appWidgetIds)
val type = NotificationType.GENERAL
@@ -82,6 +84,18 @@ class NotificationWidget : AppWidgetProvider() {
}
appWidgetManager.notifyAppWidgetViewDataChanged(appWidgetIds, R.id.widget_notification_list)
}
+
+ companion object {
+ fun forceUpdate(context: Context) {
+ val manager = AppWidgetManager.getInstance(context)
+ val ids = manager.getAppWidgetIds(ComponentName(context, NotificationWidget::class.java))
+ val intent = Intent().apply {
+ action = AppWidgetManager.ACTION_APPWIDGET_UPDATE
+ putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, ids)
+ }
+ context.sendBroadcast(intent)
+ }
+ }
}
private const val NOTIF_WIDGET_TYPE = "notif_widget_type"