Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2be0c97a authored by Michael Mikhail's avatar Michael Mikhail
Browse files

Add logs when media host visibility changes

Flag: EXEMPT BUGFIX
Bug: 371192645
Test: Build, new logs added according to UI changes.
Change-Id: If1d856edcfe2cfbd752acde09d29dd74b6d02521
parent f9b389f3
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -369,7 +369,7 @@ public class LogModule {
    @SysUISingleton
    @MediaCarouselControllerLog
    public static LogBuffer provideMediaCarouselControllerBuffer(LogBufferFactory factory) {
        return factory.create("MediaCarouselCtlrLog", 20);
        return factory.create("MediaCarouselCtlrLog", 100);
    }

    /**
+17 −5
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@ constructor(@MediaCarouselControllerLog private val buffer: LogBuffer) {
            {
                "Potential memory leak: " +
                    "Removing control panel for $str1 from map without calling #onDestroy"
            }
            },
        )

    fun logMediaLoaded(key: String, active: Boolean) =
@@ -50,7 +50,7 @@ constructor(@MediaCarouselControllerLog private val buffer: LogBuffer) {
                str1 = key
                bool1 = active
            },
            { "add player $str1, active: $bool1" }
            { "add player $str1, active: $bool1" },
        )

    fun logMediaRemoved(key: String, userInitiated: Boolean) =
@@ -61,7 +61,7 @@ constructor(@MediaCarouselControllerLog private val buffer: LogBuffer) {
                str1 = key
                bool1 = userInitiated
            },
            { "removing player $str1, by user $bool1" }
            { "removing player $str1, by user $bool1" },
        )

    fun logRecommendationLoaded(key: String, isActive: Boolean) =
@@ -72,7 +72,7 @@ constructor(@MediaCarouselControllerLog private val buffer: LogBuffer) {
                str1 = key
                bool1 = isActive
            },
            { "add recommendation $str1, active $bool1" }
            { "add recommendation $str1, active $bool1" },
        )

    fun logRecommendationRemoved(key: String, immediately: Boolean) =
@@ -83,12 +83,24 @@ constructor(@MediaCarouselControllerLog private val buffer: LogBuffer) {
                str1 = key
                bool1 = immediately
            },
            { "removing recommendation $str1, immediate=$bool1" }
            { "removing recommendation $str1, immediate=$bool1" },
        )

    fun logCarouselHidden() = buffer.log(TAG, LogLevel.DEBUG, {}, { "hiding carousel" })

    fun logCarouselVisible() = buffer.log(TAG, LogLevel.DEBUG, {}, { "showing carousel" })

    fun logMediaHostVisibility(location: Int, visible: Boolean) {
        buffer.log(
            TAG,
            LogLevel.DEBUG,
            {
                int1 = location
                bool1 = visible
            },
            { "media host visibility changed location=$location, visible:$visible" },
        )
    }
}

private const val TAG = "MediaCarouselCtlrLog"
+3 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import com.android.systemui.media.controls.domain.pipeline.MediaDataManager
import com.android.systemui.media.controls.shared.model.MediaData
import com.android.systemui.media.controls.shared.model.SmartspaceMediaData
import com.android.systemui.media.controls.ui.controller.MediaCarouselController
import com.android.systemui.media.controls.ui.controller.MediaCarouselControllerLogger
import com.android.systemui.media.controls.ui.controller.MediaHierarchyManager
import com.android.systemui.media.controls.ui.controller.MediaHostStatesManager
import com.android.systemui.media.controls.ui.controller.MediaLocation
@@ -41,6 +42,7 @@ class MediaHost(
    private val mediaDataManager: MediaDataManager,
    private val mediaHostStatesManager: MediaHostStatesManager,
    private val mediaCarouselController: MediaCarouselController,
    private val debugLogger: MediaCarouselControllerLogger,
) : MediaHostState by state {
    lateinit var hostView: UniqueObjectHostView
    var location: Int = -1
@@ -217,6 +219,7 @@ class MediaHost(
        val newVisibility = if (visible) View.VISIBLE else View.GONE
        if (newVisibility != hostView.visibility) {
            hostView.visibility = newVisibility
            debugLogger.logMediaHostVisibility(location, visible)
            visibleChangedListeners.forEach { it.invoke(visible) }
        }
    }
+16 −10
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import com.android.systemui.log.LogBufferFactory;
import com.android.systemui.media.controls.domain.MediaDomainModule;
import com.android.systemui.media.controls.domain.pipeline.MediaDataManager;
import com.android.systemui.media.controls.ui.controller.MediaCarouselController;
import com.android.systemui.media.controls.ui.controller.MediaCarouselControllerLogger;
import com.android.systemui.media.controls.ui.controller.MediaHierarchyManager;
import com.android.systemui.media.controls.ui.controller.MediaHostStatesManager;
import com.android.systemui.media.controls.ui.view.MediaHost;
@@ -60,9 +61,10 @@ public interface MediaModule {
    @Named(QS_PANEL)
    static MediaHost providesQSMediaHost(MediaHost.MediaHostStateHolder stateHolder,
            MediaHierarchyManager hierarchyManager, MediaDataManager dataManager,
            MediaHostStatesManager statesManager, MediaCarouselController carouselController) {
            MediaHostStatesManager statesManager, MediaCarouselController carouselController,
            MediaCarouselControllerLogger logger) {
        return new MediaHost(stateHolder, hierarchyManager, dataManager, statesManager,
                carouselController);
                carouselController, logger);
    }

    /** */
@@ -71,9 +73,10 @@ public interface MediaModule {
    @Named(QUICK_QS_PANEL)
    static MediaHost providesQuickQSMediaHost(MediaHost.MediaHostStateHolder stateHolder,
            MediaHierarchyManager hierarchyManager, MediaDataManager dataManager,
            MediaHostStatesManager statesManager, MediaCarouselController carouselController) {
            MediaHostStatesManager statesManager, MediaCarouselController carouselController,
            MediaCarouselControllerLogger logger) {
        return new MediaHost(stateHolder, hierarchyManager, dataManager, statesManager,
                carouselController);
                carouselController, logger);
    }

    /** */
@@ -82,9 +85,10 @@ public interface MediaModule {
    @Named(KEYGUARD)
    static MediaHost providesKeyguardMediaHost(MediaHost.MediaHostStateHolder stateHolder,
            MediaHierarchyManager hierarchyManager, MediaDataManager dataManager,
            MediaHostStatesManager statesManager, MediaCarouselController carouselController) {
            MediaHostStatesManager statesManager, MediaCarouselController carouselController,
            MediaCarouselControllerLogger logger) {
        return new MediaHost(stateHolder, hierarchyManager, dataManager, statesManager,
                carouselController);
                carouselController, logger);
    }

    /** */
@@ -93,9 +97,10 @@ public interface MediaModule {
    @Named(DREAM)
    static MediaHost providesDreamMediaHost(MediaHost.MediaHostStateHolder stateHolder,
            MediaHierarchyManager hierarchyManager, MediaDataManager dataManager,
            MediaHostStatesManager statesManager, MediaCarouselController carouselController) {
            MediaHostStatesManager statesManager, MediaCarouselController carouselController,
            MediaCarouselControllerLogger logger) {
        return new MediaHost(stateHolder, hierarchyManager, dataManager, statesManager,
                carouselController);
                carouselController, logger);
    }

    /** */
@@ -104,9 +109,10 @@ public interface MediaModule {
    @Named(COMMUNAL_HUB)
    static MediaHost providesCommunalMediaHost(MediaHost.MediaHostStateHolder stateHolder,
            MediaHierarchyManager hierarchyManager, MediaDataManager dataManager,
            MediaHostStatesManager statesManager, MediaCarouselController carouselController) {
            MediaHostStatesManager statesManager, MediaCarouselController carouselController,
            MediaCarouselControllerLogger logger) {
        return new MediaHost(stateHolder, hierarchyManager, dataManager, statesManager,
                carouselController);
                carouselController, logger);
    }

    /** Provides a logging buffer related to the media tap-to-transfer chip on the sender device. */