Skip to content

Commit 8ce99be

Browse files
committed
handle ACTION_APPWIDGET_OPTIONS_CHANGED resize event
1 parent c95416c commit 8ce99be

2 files changed

Lines changed: 26 additions & 2 deletions

File tree

AnkiDroid/src/main/java/com/ichi2/widget/cardanalysis/CardAnalysisWidget.kt

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -306,7 +306,18 @@ class CardAnalysisWidget : AnalyticsWidgetProvider() {
306306
}
307307
}
308308
AppWidgetManager.ACTION_APPWIDGET_OPTIONS_CHANGED -> {
309-
// TODO: #17151 not yet handled. Exists to stop ACRA errors
309+
Timber.d("ACTION_APPWIDGET_OPTIONS_CHANGED received from CardAnalysisWidget")
310+
val appWidgetId = intent.getAppWidgetId()
311+
if (appWidgetId != INVALID_APPWIDGET_ID) {
312+
Timber.d("Handling resize for widget ID: $appWidgetId")
313+
updateWidget(
314+
context,
315+
AppWidgetManager.getInstance(context),
316+
appWidgetId,
317+
)
318+
} else {
319+
Timber.e("Invalid widget ID received in ACTION_APPWIDGET_OPTIONS_CHANGED")
320+
}
310321
}
311322
AppWidgetManager.ACTION_APPWIDGET_DELETED -> {
312323
Timber.d("ACTION_APPWIDGET_DELETED received")

AnkiDroid/src/main/java/com/ichi2/widget/deckpicker/DeckPickerWidget.kt

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -343,7 +343,20 @@ class DeckPickerWidget : AnalyticsWidgetProvider() {
343343
}
344344
}
345345
AppWidgetManager.ACTION_APPWIDGET_OPTIONS_CHANGED -> {
346-
// TODO: #17151: not yet handled. Exists to stop ACRA errors
346+
Timber.d("ACTION_APPWIDGET_OPTIONS_CHANGED received from DeckPickerWidget")
347+
val appWidgetId = intent.getAppWidgetId()
348+
if (appWidgetId != INVALID_APPWIDGET_ID) {
349+
Timber.d("Handling resize for widget ID: $appWidgetId")
350+
val selectedDeckIds = widgetPreferences.getSelectedDeckIdsFromPreferences(appWidgetId)
351+
updateWidget(
352+
context,
353+
AppWidgetManager.getInstance(context),
354+
appWidgetId,
355+
selectedDeckIds,
356+
)
357+
} else {
358+
Timber.e("Invalid widget ID received in ACTION_APPWIDGET_OPTIONS_CHANGED")
359+
}
347360
}
348361
AppWidgetManager.ACTION_APPWIDGET_ENABLED -> {
349362
Timber.d("Widget enabled")

0 commit comments

Comments
 (0)