diff --git a/AnkiDroid/src/main/java/com/ichi2/widget/cardanalysis/CardAnalysisWidget.kt b/AnkiDroid/src/main/java/com/ichi2/widget/cardanalysis/CardAnalysisWidget.kt index 102e54ef6019..4e657f4ea518 100644 --- a/AnkiDroid/src/main/java/com/ichi2/widget/cardanalysis/CardAnalysisWidget.kt +++ b/AnkiDroid/src/main/java/com/ichi2/widget/cardanalysis/CardAnalysisWidget.kt @@ -76,6 +76,11 @@ class CardAnalysisWidget : AnalyticsWidgetProvider() { val deckData = getDeckNameAndStats(deckId.toList()) if (deckData.isEmpty()) { + // If the deck was deleted, clear the stored deck ID + val widgetPreferences = CardAnalysisWidgetPreferences(context) + val selectedDeck = longArrayOf().map { it.toString() } + widgetPreferences.saveSelectedDeck(appWidgetId, selectedDeck) + // Show empty_widget and set click listener to open configuration remoteViews.setViewVisibility(R.id.empty_widget, View.VISIBLE) remoteViews.setViewVisibility(R.id.cardAnalysisDataHolder, View.GONE) diff --git a/AnkiDroid/src/main/java/com/ichi2/widget/cardanalysis/CardAnalysisWidgetConfig.kt b/AnkiDroid/src/main/java/com/ichi2/widget/cardanalysis/CardAnalysisWidgetConfig.kt index 4cb728e1a3f1..a4fded4804d3 100644 --- a/AnkiDroid/src/main/java/com/ichi2/widget/cardanalysis/CardAnalysisWidgetConfig.kt +++ b/AnkiDroid/src/main/java/com/ichi2/widget/cardanalysis/CardAnalysisWidgetConfig.kt @@ -103,7 +103,11 @@ class CardAnalysisWidgetConfig : AnkiActivity(), DeckSelectionListener, BaseSnac } initializeUIComponents() - showDeckSelectionDialog() + // Show the Deck selection dialog only when there are no decks selected while opening the configuration screen. + val selectedDeckIds = cardAnalysisWidgetPreferences.getSelectedDeckIdFromPreferences(appWidgetId) + if (selectedDeckIds.isEmpty()) { + showDeckSelectionDialog() + } } }