adding some widget related checks

This commit is contained in:
tibbi 2021-05-13 14:57:44 +02:00
parent 5e975d4b52
commit 072f19fe8c
2 changed files with 4 additions and 4 deletions

View File

@ -12,7 +12,7 @@ import com.simplemobiletools.flashlight.helpers.*
val Context.config: Config get() = Config.newInstance(applicationContext) val Context.config: Config get() = Config.newInstance(applicationContext)
fun Context.updateWidgets(isEnabled: Boolean) { fun Context.updateWidgets(isEnabled: Boolean) {
val widgetIDs = AppWidgetManager.getInstance(applicationContext).getAppWidgetIds(ComponentName(applicationContext, MyWidgetTorchProvider::class.java)) val widgetIDs = AppWidgetManager.getInstance(applicationContext)?.getAppWidgetIds(ComponentName(applicationContext, MyWidgetTorchProvider::class.java)) ?: return
if (widgetIDs.isNotEmpty()) { if (widgetIDs.isNotEmpty()) {
Intent(applicationContext, MyWidgetTorchProvider::class.java).apply { Intent(applicationContext, MyWidgetTorchProvider::class.java).apply {
action = TOGGLE_WIDGET_UI action = TOGGLE_WIDGET_UI
@ -25,7 +25,7 @@ fun Context.updateWidgets(isEnabled: Boolean) {
} }
fun Context.updateBrightDisplayWidget() { fun Context.updateBrightDisplayWidget() {
val widgetIDs = AppWidgetManager.getInstance(applicationContext).getAppWidgetIds(ComponentName(applicationContext, MyWidgetBrightDisplayProvider::class.java)) val widgetIDs = AppWidgetManager.getInstance(applicationContext)?.getAppWidgetIds(ComponentName(applicationContext, MyWidgetBrightDisplayProvider::class.java)) ?: return
if (widgetIDs.isNotEmpty()) { if (widgetIDs.isNotEmpty()) {
Intent(applicationContext, MyWidgetBrightDisplayProvider::class.java).apply { Intent(applicationContext, MyWidgetBrightDisplayProvider::class.java).apply {
action = AppWidgetManager.ACTION_APPWIDGET_UPDATE action = AppWidgetManager.ACTION_APPWIDGET_UPDATE

View File

@ -26,7 +26,7 @@ class MyWidgetTorchProvider : AppWidgetProvider() {
val intent = Intent(context, MyWidgetTorchProvider::class.java) val intent = Intent(context, MyWidgetTorchProvider::class.java)
intent.action = TOGGLE intent.action = TOGGLE
val appWidgetManager = AppWidgetManager.getInstance(context) val appWidgetManager = AppWidgetManager.getInstance(context) ?: return
appWidgetManager.getAppWidgetIds(getComponentName(context)).forEach { appWidgetManager.getAppWidgetIds(getComponentName(context)).forEach {
val views = RemoteViews(context.packageName, R.layout.widget_torch) val views = RemoteViews(context.packageName, R.layout.widget_torch)
@ -59,7 +59,7 @@ class MyWidgetTorchProvider : AppWidgetProvider() {
val selectedColor = if (enable) widgetBgColor else Color.WHITE val selectedColor = if (enable) widgetBgColor else Color.WHITE
val bmp = getColoredIcon(context, selectedColor, alpha) val bmp = getColoredIcon(context, selectedColor, alpha)
val appWidgetManager = AppWidgetManager.getInstance(context) val appWidgetManager = AppWidgetManager.getInstance(context) ?: return
appWidgetManager.getAppWidgetIds(getComponentName(context)).forEach { appWidgetManager.getAppWidgetIds(getComponentName(context)).forEach {
val views = RemoteViews(context.packageName, R.layout.widget_torch) val views = RemoteViews(context.packageName, R.layout.widget_torch)
views.setImageViewBitmap(R.id.flashlight_btn, bmp) views.setImageViewBitmap(R.id.flashlight_btn, bmp)