diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/MyWidgetProvider.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/MyWidgetProvider.kt index f61831a30..8ffba7f09 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/MyWidgetProvider.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/MyWidgetProvider.kt @@ -30,9 +30,8 @@ class MyWidgetProvider : AppWidgetProvider() { override fun onUpdate(context: Context, appWidgetManager: AppWidgetManager, appWidgetIds: IntArray) { super.onUpdate(context, appWidgetManager, appWidgetIds) Thread { - val widgets = context.widgetsDB.getWidgets() val config = context.config - widgets.forEach { + context.widgetsDB.getWidgets().forEach { val views = RemoteViews(context.packageName, R.layout.widget).apply { setBackgroundColor(R.id.widget_holder, config.widgetBgColor) setVisibleIf(R.id.widget_folder_name, config.showWidgetFolderName) @@ -61,4 +60,13 @@ class MyWidgetProvider : AppWidgetProvider() { } }.start() } + + override fun onDeleted(context: Context, appWidgetIds: IntArray) { + super.onDeleted(context, appWidgetIds) + Thread { + appWidgetIds.forEach { + context.widgetsDB.deleteWidgetId(it) + } + }.start() + } } diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/interfaces/WidgetsDao.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/interfaces/WidgetsDao.kt index 72409ca35..b6ecb2492 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/interfaces/WidgetsDao.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/interfaces/WidgetsDao.kt @@ -14,6 +14,6 @@ interface WidgetsDao { @Insert(onConflict = OnConflictStrategy.REPLACE) fun insertOrUpdate(widget: Widget): Long - @Query("DELETE FROM widgets WHERE folder_path = :folderPath") - fun deleteNoteWidgets(folderPath: String) + @Query("DELETE FROM widgets WHERE widget_id = :widgetId") + fun deleteWidgetId(widgetId: Int) }