summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com>2023-11-08 19:25:45 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-11-08 19:25:45 +0000
commit230d25c4008e193ac1e46e8a247271574d9d329a (patch)
tree0e2b52693ae6606bf2fa7e995e795492ae12c7e9
parent530fda754f83f65734f22d4db82b13c29137965f (diff)
parentfba6a29ea2b743ee7dbd077aeeeaef0a5c156d1e (diff)
downloadThemePicker-230d25c4008e193ac1e46e8a247271574d9d329a.tar.gz
Merge changes from topic "blackflash" into udc-qpr-dev am: fba6a29ea2
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/ThemePicker/+/25107911 Change-Id: Ib3c832896e88d3c78f4989c0c461b0cc22b2e25d Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--src/com/android/customization/module/ThemePickerInjector.kt12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/com/android/customization/module/ThemePickerInjector.kt b/src/com/android/customization/module/ThemePickerInjector.kt
index f31af447..a1fc0144 100644
--- a/src/com/android/customization/module/ThemePickerInjector.kt
+++ b/src/com/android/customization/module/ThemePickerInjector.kt
@@ -15,6 +15,7 @@
*/
package com.android.customization.module
+import android.app.Activity
import android.app.UiModeManager
import android.app.WallpaperManager
import android.content.Context
@@ -111,7 +112,7 @@ internal constructor(
private var clockPickerInteractor: ClockPickerInteractor? = null
private var clockSectionViewModel: ClockSectionViewModel? = null
private var clockCarouselViewModelFactory: ClockCarouselViewModel.Factory? = null
- private var clockViewFactories: MutableMap<Int, ClockViewFactory> = HashMap()
+ private var clockViewFactory: ClockViewFactory? = null
private var clockPickerSnapshotRestorer: ClockPickerSnapshotRestorer? = null
private var notificationsInteractor: NotificationsInteractor? = null
private var notificationSectionViewModelFactory: NotificationSectionViewModel.Factory? = null
@@ -388,8 +389,7 @@ internal constructor(
}
override fun getClockViewFactory(activity: ComponentActivity): ClockViewFactory {
- val activityHashCode = activity.hashCode()
- return clockViewFactories[activityHashCode]
+ return clockViewFactory
?: ClockViewFactory(
activity.applicationContext,
ScreenSizeCalculator.getInstance()
@@ -398,13 +398,13 @@ internal constructor(
getClockRegistry(activity.applicationContext),
)
.also {
- clockViewFactories[activityHashCode] = it
+ clockViewFactory = it
activity.lifecycle.addObserver(
object : DefaultLifecycleObserver {
override fun onDestroy(owner: LifecycleOwner) {
super.onDestroy(owner)
- clockViewFactories[activityHashCode]?.onDestroy()
- clockViewFactories.remove(activityHashCode)
+ if ((owner as Activity).isChangingConfigurations()) return
+ clockViewFactory?.onDestroy()
}
}
)