diff options
| author | 2025-02-10 17:16:55 -0500 | |
|---|---|---|
| committer | 2025-02-12 10:17:33 -0500 | |
| commit | fbf05992f61a02318265135c354d9bbd6b9098ad (patch) | |
| tree | e2eebb7c3155a404762b8ac2530e14517d7c3916 | |
| parent | d71c01b7b0b5dd6291adfa744bbe86e89524f2ea (diff) | |
Make KeyguardRootViewModel and AODPromotedNotificationInteractor FlowDumpers
Bug: 369151941
Flag: EXEMPT logging
Test: manual
Change-Id: I7409fbf5ed59d9809ed5a9bba56de21443ab74c6
4 files changed, 50 insertions, 21 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModel.kt b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModel.kt index 62a5ebab29e0..3eab73ab1721 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModel.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModel.kt @@ -25,6 +25,7 @@ import com.android.systemui.communal.domain.interactor.CommunalInteractor import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.deviceentry.domain.interactor.DeviceEntryInteractor +import com.android.systemui.dump.DumpManager import com.android.systemui.keyguard.domain.interactor.KeyguardInteractor import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor import com.android.systemui.keyguard.domain.interactor.PulseExpansionInteractor @@ -47,6 +48,7 @@ import com.android.systemui.statusbar.notification.icon.ui.viewmodel.Notificatio import com.android.systemui.statusbar.phone.DozeParameters import com.android.systemui.statusbar.phone.ScreenOffAnimationController import com.android.systemui.util.kotlin.BooleanFlowOperators.anyOf +import com.android.systemui.util.kotlin.FlowDumperImpl import com.android.systemui.util.kotlin.pairwise import com.android.systemui.util.kotlin.sample import com.android.systemui.util.ui.AnimatableEvent @@ -134,17 +136,21 @@ constructor( private val aodBurnInViewModel: AodBurnInViewModel, private val shadeInteractor: ShadeInteractor, wallpaperFocalAreaInteractor: WallpaperFocalAreaInteractor, -) { + dumpManager: DumpManager, +) : FlowDumperImpl(dumpManager) { val burnInLayerVisibility: Flow<Int> = keyguardTransitionInteractor.startedKeyguardTransitionStep .filter { it.to == AOD || it.to == LOCKSCREEN } .map { VISIBLE } + .dumpWhileCollecting("burnInLayerVisibility") val goneToAodTransition = - keyguardTransitionInteractor.transition( - edge = Edge.create(Scenes.Gone, AOD), - edgeWithoutSceneContainer = Edge.create(GONE, AOD), - ) + keyguardTransitionInteractor + .transition( + edge = Edge.create(Scenes.Gone, AOD), + edgeWithoutSceneContainer = Edge.create(GONE, AOD), + ) + .dumpWhileCollecting("goneToAodTransition") private val goneToAodTransitionRunning: Flow<Boolean> = goneToAodTransition @@ -222,13 +228,15 @@ constructor( ) /** Last point that the root view was tapped */ - val lastRootViewTapPosition: Flow<Point?> = keyguardInteractor.lastRootViewTapPosition + val lastRootViewTapPosition: Flow<Point?> = + keyguardInteractor.lastRootViewTapPosition.dumpWhileCollecting("lastRootViewTapPosition") /** * The keyguard root view can be clipped as the shade is pulled down, typically only for * non-split shade cases. */ - val topClippingBounds: Flow<Int?> = keyguardInteractor.topClippingBounds + val topClippingBounds: Flow<Int?> = + keyguardInteractor.topClippingBounds.dumpWhileCollecting("topClippingBounds") /** An observable for the alpha level for the entire keyguard root view. */ fun alpha(viewState: ViewStateAccessor): Flow<Float> { @@ -287,30 +295,37 @@ constructor( } } .distinctUntilChanged() + .dumpWhileCollecting("alpha") } val scaleFromZoomOut: Flow<Float> = - keyguardInteractor.zoomOut.map { 1 - it * PUSHBACK_SCALE_FOR_LOCKSCREEN } + keyguardInteractor.zoomOut + .map { 1 - it * PUSHBACK_SCALE_FOR_LOCKSCREEN } + .dumpWhileCollecting("scaleFromZoomOut") - val translationY: Flow<Float> = aodBurnInViewModel.movement.map { it.translationY.toFloat() } + val translationY: Flow<Float> = + aodBurnInViewModel.movement + .map { it.translationY.toFloat() } + .dumpWhileCollecting("translationY") val translationX: Flow<StateToValue> = merge( - aodBurnInViewModel.movement.map { - StateToValue(to = AOD, value = it.translationX.toFloat()) - }, - lockscreenToGlanceableHubTransitionViewModel.keyguardTranslationX, - glanceableHubToLockscreenTransitionViewModel.keyguardTranslationX, - ) + aodBurnInViewModel.movement.map { + StateToValue(to = AOD, value = it.translationX.toFloat()) + }, + lockscreenToGlanceableHubTransitionViewModel.keyguardTranslationX, + glanceableHubToLockscreenTransitionViewModel.keyguardTranslationX, + ) + .dumpWhileCollecting("translationX") fun updateBurnInParams(params: BurnInParameters) { aodBurnInViewModel.updateBurnInParams(params) } val scale: Flow<BurnInScaleViewModel> = - aodBurnInViewModel.movement.map { - BurnInScaleViewModel(scale = it.scale, scaleClockOnly = it.scaleClockOnly) - } + aodBurnInViewModel.movement + .map { BurnInScaleViewModel(scale = it.scale, scaleClockOnly = it.scaleClockOnly) } + .dumpWhileCollecting("scale") val isAodPromotedNotifVisible: StateFlow<Boolean> = keyguardTransitionInteractor @@ -321,6 +336,7 @@ constructor( started = SharingStarted.WhileSubscribed(), initialValue = false, ) + .dumpValue("isAodPromotedNotifVisible") /** Is the notification icon container visible? */ val isNotifIconContainerVisible: StateFlow<AnimatedValue<Boolean>> = @@ -376,6 +392,7 @@ constructor( started = SharingStarted.WhileSubscribed(), initialValue = AnimatedValue.NotAnimating(false), ) + .dumpValue("isNotifIconContainerVisible") fun onNotificationContainerBoundsChanged(top: Float, bottom: Float, animate: Boolean = false) { keyguardInteractor.setNotificationContainerBounds( diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/promoted/domain/interactor/AODPromotedNotificationInteractor.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/promoted/domain/interactor/AODPromotedNotificationInteractor.kt index e1317ef9ceef..393f95d3ad77 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/promoted/domain/interactor/AODPromotedNotificationInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/promoted/domain/interactor/AODPromotedNotificationInteractor.kt @@ -17,9 +17,11 @@ package com.android.systemui.statusbar.notification.promoted.domain.interactor import com.android.systemui.dagger.SysUISingleton +import com.android.systemui.dump.DumpManager import com.android.systemui.statusbar.notification.domain.interactor.ActiveNotificationsInteractor import com.android.systemui.statusbar.notification.promoted.shared.model.PromotedNotificationContentModel import com.android.systemui.statusbar.notification.promoted.shared.model.PromotedNotificationContentModel.Style +import com.android.systemui.util.kotlin.FlowDumperImpl import javax.inject.Inject import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.map @@ -27,11 +29,17 @@ import kotlinx.coroutines.flow.map @SysUISingleton class AODPromotedNotificationInteractor @Inject -constructor(activeNotificationsInteractor: ActiveNotificationsInteractor) { +constructor( + activeNotificationsInteractor: ActiveNotificationsInteractor, + dumpManager: DumpManager, +) : FlowDumperImpl(dumpManager) { val content: Flow<PromotedNotificationContentModel?> = activeNotificationsInteractor.topLevelRepresentativeNotifications.map { notifs -> notifs.firstNotNullOfOrNull { it.promotedContent } } - val isPresent: Flow<Boolean> = content.map { (it != null) && (it.style != Style.Ineligible) } + val isPresent: Flow<Boolean> = + content + .map { (it != null) && (it.style != Style.Ineligible) } + .dumpWhileCollecting("isPresent") } diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModelKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModelKosmos.kt index ea3feeaf0854..c2e7c5278d1b 100644 --- a/packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModelKosmos.kt +++ b/packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModelKosmos.kt @@ -17,6 +17,7 @@ package com.android.systemui.keyguard.ui.viewmodel import com.android.systemui.communal.domain.interactor.communalInteractor import com.android.systemui.deviceentry.domain.interactor.deviceEntryInteractor +import com.android.systemui.dump.dumpManager import com.android.systemui.keyguard.domain.interactor.keyguardInteractor import com.android.systemui.keyguard.domain.interactor.keyguardTransitionInteractor import com.android.systemui.keyguard.domain.interactor.pulseExpansionInteractor @@ -90,5 +91,6 @@ val Kosmos.keyguardRootViewModel by Fixture { aodBurnInViewModel = aodBurnInViewModel, shadeInteractor = shadeInteractor, wallpaperFocalAreaInteractor = wallpaperFocalAreaInteractor, + dumpManager = dumpManager, ) } diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/promoted/domain/interactor/AODPromotedNotificationInteractorKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/promoted/domain/interactor/AODPromotedNotificationInteractorKosmos.kt index 6351b52f0124..df1c82278bc2 100644 --- a/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/promoted/domain/interactor/AODPromotedNotificationInteractorKosmos.kt +++ b/packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/promoted/domain/interactor/AODPromotedNotificationInteractorKosmos.kt @@ -16,12 +16,14 @@ package com.android.systemui.statusbar.notification.promoted.domain.interactor +import com.android.systemui.dump.dumpManager import com.android.systemui.kosmos.Kosmos import com.android.systemui.statusbar.notification.domain.interactor.activeNotificationsInteractor val Kosmos.aodPromotedNotificationInteractor by Kosmos.Fixture { AODPromotedNotificationInteractor( - activeNotificationsInteractor = activeNotificationsInteractor + activeNotificationsInteractor = activeNotificationsInteractor, + dumpManager = dumpManager, ) } |