summaryrefslogtreecommitdiff
path: root/src/com/android/customization/picker/quickaffordance/domain/interactor/KeyguardQuickAffordanceSnapshotRestorer.kt
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/customization/picker/quickaffordance/domain/interactor/KeyguardQuickAffordanceSnapshotRestorer.kt')
-rw-r--r--src/com/android/customization/picker/quickaffordance/domain/interactor/KeyguardQuickAffordanceSnapshotRestorer.kt9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/com/android/customization/picker/quickaffordance/domain/interactor/KeyguardQuickAffordanceSnapshotRestorer.kt b/src/com/android/customization/picker/quickaffordance/domain/interactor/KeyguardQuickAffordanceSnapshotRestorer.kt
index 3c7928ce..fee0cb51 100644
--- a/src/com/android/customization/picker/quickaffordance/domain/interactor/KeyguardQuickAffordanceSnapshotRestorer.kt
+++ b/src/com/android/customization/picker/quickaffordance/domain/interactor/KeyguardQuickAffordanceSnapshotRestorer.kt
@@ -42,9 +42,14 @@ class KeyguardQuickAffordanceSnapshotRestorer(
}
override suspend fun restoreToSnapshot(snapshot: RestorableSnapshot) {
+ // reset all current selections
+ interactor.unselectAll()
+
+ val allSelections = checkNotNull(snapshot.args[KEY_SELECTIONS])
+ if (allSelections.isEmpty()) return
+
val selections: List<Pair<String, String>> =
- checkNotNull(snapshot.args[KEY_SELECTIONS]).split(SELECTION_SEPARATOR).map { selection
- ->
+ allSelections.split(SELECTION_SEPARATOR).map { selection ->
val (slotId, affordanceId) = selection.split(SLOT_AFFORDANCE_SEPARATOR)
slotId to affordanceId
}