diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/dagger/StatusBarDependenciesModule.java b/packages/SystemUI/src/com/android/systemui/statusbar/dagger/StatusBarDependenciesModule.java index ea00d920c9b09..6730afaafdef5 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/dagger/StatusBarDependenciesModule.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/dagger/StatusBarDependenciesModule.java @@ -252,11 +252,12 @@ public interface StatusBarDependenciesModule { ActivityStarter activityStarter, @Main Executor mainExecutor, IActivityManager iActivityManager, - OngoingCallLogger logger) { + OngoingCallLogger logger, + DumpManager dumpManager) { OngoingCallController ongoingCallController = new OngoingCallController( notifCollection, featureFlags, systemClock, activityStarter, mainExecutor, - iActivityManager, logger); + iActivityManager, logger, dumpManager); ongoingCallController.init(); return ongoingCallController; } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallController.kt index eeff010e0bdf8..6fdf0361cf76b 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallController.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallController.kt @@ -26,10 +26,12 @@ import android.util.Log import android.view.View import androidx.annotation.VisibleForTesting import com.android.internal.jank.InteractionJankMonitor +import com.android.systemui.Dumpable import com.android.systemui.R import com.android.systemui.animation.ActivityLaunchAnimator import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Main +import com.android.systemui.dump.DumpManager import com.android.systemui.plugins.ActivityStarter import com.android.systemui.flags.FeatureFlags import com.android.systemui.statusbar.notification.collection.NotificationEntry @@ -37,6 +39,8 @@ import com.android.systemui.statusbar.notification.collection.notifcollection.Co import com.android.systemui.statusbar.notification.collection.notifcollection.NotifCollectionListener import com.android.systemui.statusbar.policy.CallbackController import com.android.systemui.util.time.SystemClock +import java.io.FileDescriptor +import java.io.PrintWriter import java.util.concurrent.Executor import javax.inject.Inject @@ -51,13 +55,14 @@ class OngoingCallController @Inject constructor( private val activityStarter: ActivityStarter, @Main private val mainExecutor: Executor, private val iActivityManager: IActivityManager, - private val logger: OngoingCallLogger -) : CallbackController { + private val logger: OngoingCallLogger, + private val dumpManager: DumpManager, +) : CallbackController, Dumpable { /** Non-null if there's an active call notification. */ private var callNotificationInfo: CallNotificationInfo? = null /** True if the application managing the call is visible to the user. */ - private var isCallAppVisible: Boolean = true + private var isCallAppVisible: Boolean = false private var chipView: View? = null private var uidObserver: IUidObserver.Stub? = null @@ -120,6 +125,7 @@ class OngoingCallController @Inject constructor( } fun init() { + dumpManager.registerDumpable(this) if (featureFlags.isOngoingCallStatusBarChipEnabled) { notifCollection.addCollectionListener(notifListener) } @@ -299,6 +305,11 @@ class OngoingCallController @Inject constructor( */ fun hasValidStartTime(): Boolean = callStartTime > 0 } + + override fun dump(fd: FileDescriptor, pw: PrintWriter, args: Array) { + pw.println("Active call notification: $callNotificationInfo") + pw.println("Call app visible: $isCallAppVisible") + } } private fun isCallNotification(entry: NotificationEntry): Boolean { diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallControllerTest.kt index efe2c1774b088..5b6c244b50cbb 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallControllerTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ongoingcall/OngoingCallControllerTest.kt @@ -33,6 +33,7 @@ import androidx.test.filters.SmallTest import com.android.internal.logging.testing.UiEventLoggerFake import com.android.systemui.R import com.android.systemui.SysuiTestCase +import com.android.systemui.dump.DumpManager import com.android.systemui.plugins.ActivityStarter import com.android.systemui.flags.FeatureFlags import com.android.systemui.statusbar.notification.collection.NotificationEntry @@ -105,7 +106,9 @@ class OngoingCallControllerTest : SysuiTestCase() { mockActivityStarter, mainExecutor, mockIActivityManager, - OngoingCallLogger(uiEventLoggerFake)) + OngoingCallLogger(uiEventLoggerFake), + DumpManager(), + ) controller.init() controller.addCallback(mockOngoingCallListener) controller.setChipView(chipView)