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

Commit 9bdf4830 authored by Michael Mikhail's avatar Michael Mikhail
Browse files

[flexiglass] Remove new media pipeline flag

This CL merges new media pipeline code into flexiglass.

Flag: com.android.systemui.scene_container
Bug: 326408371
Test: atest MediaViewControllerTest
Test: atest MediaDataProcessorTest
Change-Id: I0a264e52b4f3d64395dcdb43ccf093a53050ea3a
parent ed66de50
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ interface MediaDomainModule {
    @IntoMap
    @ClassKey(MediaDataProcessor::class)
    fun bindMediaDataProcessor(interactor: MediaDataProcessor): CoreStartable

    companion object {

        @Provides
@@ -52,7 +53,7 @@ interface MediaDomainModule {
            newProvider: Provider<MediaCarouselInteractor>,
            mediaFlags: MediaFlags,
        ): MediaDataManager {
            return if (mediaFlags.isMediaControlsRefactorEnabled()) {
            return if (mediaFlags.isSceneContainerEnabled()) {
                newProvider.get()
            } else {
                legacyProvider.get()
+2 −3
Original line number Diff line number Diff line
@@ -269,7 +269,7 @@ class MediaDataProcessor(
        }

    override fun start() {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) {
        if (!mediaFlags.isSceneContainerEnabled()) {
            return
        }

@@ -746,8 +746,7 @@ class MediaDataProcessor(
            notif.extras.getParcelable(
                Notification.EXTRA_BUILDER_APPLICATION_INFO,
                ApplicationInfo::class.java
            )
                ?: getAppInfoFromPackage(sbn.packageName)
            ) ?: getAppInfoFromPackage(sbn.packageName)

        // App name
        val appName = getAppName(sbn, appInfo)
+3 −5
Original line number Diff line number Diff line
@@ -36,8 +36,8 @@ import com.android.systemui.media.controls.domain.pipeline.MediaSessionBasedFilt
import com.android.systemui.media.controls.domain.pipeline.MediaTimeoutListener
import com.android.systemui.media.controls.domain.resume.MediaResumeListener
import com.android.systemui.media.controls.shared.model.MediaCommonModel
import com.android.systemui.media.controls.util.MediaControlsRefactorFlag
import com.android.systemui.media.controls.util.MediaFlags
import com.android.systemui.scene.shared.flag.SceneContainerFlag
import java.io.PrintWriter
import javax.inject.Inject
import kotlinx.coroutines.CoroutineScope
@@ -127,7 +127,7 @@ constructor(
    val currentMedia: StateFlow<List<MediaCommonModel>> = mediaFilterRepository.currentMedia

    override fun start() {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) {
        if (!mediaFlags.isSceneContainerEnabled()) {
            return
        }

@@ -256,8 +256,6 @@ constructor(
    companion object {
        val unsupported: Nothing
            get() =
                error(
                    "Code path not supported when ${MediaControlsRefactorFlag.FLAG_NAME} is enabled"
                )
                error("Code path not supported when ${SceneContainerFlag.DESCRIPTION} is enabled")
    }
}
+11 −12
Original line number Diff line number Diff line
@@ -217,7 +217,7 @@ constructor(
    private val animationScaleObserver: ContentObserver =
        object : ContentObserver(null) {
            override fun onChange(selfChange: Boolean) {
                if (!mediaFlags.isMediaControlsRefactorEnabled()) {
                if (!mediaFlags.isSceneContainerEnabled()) {
                    MediaPlayerData.players().forEach { it.updateAnimatorDurationScale() }
                } else {
                    controllerByViewModel.values.forEach { it.updateAnimatorDurationScale() }
@@ -347,7 +347,7 @@ constructor(
        inflateSettingsButton()
        mediaContent = mediaCarousel.requireViewById(R.id.media_carousel)
        configurationController.addCallback(configListener)
        if (!mediaFlags.isMediaControlsRefactorEnabled()) {
        if (!mediaFlags.isSceneContainerEnabled()) {
            setUpListeners()
        } else {
            val visualStabilityCallback = OnReorderingAllowedListener {
@@ -389,7 +389,7 @@ constructor(
                listenForAnyStateToLockscreenTransition(this)
                listenForLockscreenSettingChanges(this)

                if (!mediaFlags.isMediaControlsRefactorEnabled()) return@repeatOnLifecycle
                if (!mediaFlags.isSceneContainerEnabled()) return@repeatOnLifecycle
                listenForMediaItemsChanges(this)
            }
        }
@@ -882,8 +882,7 @@ constructor(
                    val previousVisibleIndex =
                        MediaPlayerData.playerKeys().indexOfFirst { key -> it == key }
                    mediaCarouselScrollHandler.scrollToPlayer(previousVisibleIndex, mediaIndex)
                }
                    ?: mediaCarouselScrollHandler.scrollToPlayer(destIndex = mediaIndex)
                } ?: mediaCarouselScrollHandler.scrollToPlayer(destIndex = mediaIndex)
            }
        } else if (isRtl && mediaContent.childCount > 0) {
            // In RTL, Scroll to the first player as it is the rightmost player in media carousel.
@@ -1092,7 +1091,7 @@ constructor(
    }

    private fun updatePlayers(recreateMedia: Boolean) {
        if (mediaFlags.isMediaControlsRefactorEnabled()) {
        if (mediaFlags.isSceneContainerEnabled()) {
            updateMediaPlayers(recreateMedia)
            return
        }
@@ -1192,7 +1191,7 @@ constructor(
            currentStartLocation = startLocation
            currentEndLocation = endLocation
            currentTransitionProgress = progress
            if (!mediaFlags.isMediaControlsRefactorEnabled()) {
            if (!mediaFlags.isSceneContainerEnabled()) {
                for (mediaPlayer in MediaPlayerData.players()) {
                    updateViewControllerToState(mediaPlayer.mediaViewController, immediately)
                }
@@ -1254,7 +1253,7 @@ constructor(

    /** Update listening to seekbar. */
    private fun updateSeekbarListening(visibleToUser: Boolean) {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) {
        if (!mediaFlags.isSceneContainerEnabled()) {
            for (player in MediaPlayerData.players()) {
                player.setListening(visibleToUser && currentlyExpanded)
            }
@@ -1269,7 +1268,7 @@ constructor(
    private fun updateCarouselDimensions() {
        var width = 0
        var height = 0
        if (!mediaFlags.isMediaControlsRefactorEnabled()) {
        if (!mediaFlags.isSceneContainerEnabled()) {
            for (mediaPlayer in MediaPlayerData.players()) {
                val controller = mediaPlayer.mediaViewController
                // When transitioning the view to gone, the view gets smaller, but the translation
@@ -1361,7 +1360,7 @@ constructor(
                        !mediaManager.hasActiveMediaOrRecommendation() &&
                        desiredHostState.showsOnlyActiveMedia

                if (!mediaFlags.isMediaControlsRefactorEnabled()) {
                if (!mediaFlags.isSceneContainerEnabled()) {
                    for (mediaPlayer in MediaPlayerData.players()) {
                        if (animate) {
                            mediaPlayer.mediaViewController.animatePendingStateChange(
@@ -1401,7 +1400,7 @@ constructor(
        }

    fun closeGuts(immediate: Boolean = true) {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) {
        if (!mediaFlags.isSceneContainerEnabled()) {
            MediaPlayerData.players().forEach { it.closeGuts(immediate) }
        } else {
            controllerByViewModel.values.forEach { it.closeGuts(immediate) }
@@ -1544,7 +1543,7 @@ constructor(

    @VisibleForTesting
    fun onSwipeToDismiss() {
        if (mediaFlags.isMediaControlsRefactorEnabled()) {
        if (mediaFlags.isSceneContainerEnabled()) {
            mediaCarouselViewModel.onSwipeToDismiss()
            return
        }
+13 −12
Original line number Diff line number Diff line
@@ -203,7 +203,7 @@ constructor(
    private val scrubbingChangeListener =
        object : SeekBarViewModel.ScrubbingChangeListener {
            override fun onScrubbingChanged(scrubbing: Boolean) {
                if (!mediaFlags.isMediaControlsRefactorEnabled()) return
                if (!mediaFlags.isSceneContainerEnabled()) return
                if (isScrubbing == scrubbing) return
                isScrubbing = scrubbing
                updateDisplayForScrubbingChange()
@@ -213,7 +213,7 @@ constructor(
    private val enabledChangeListener =
        object : SeekBarViewModel.EnabledChangeListener {
            override fun onEnabledChanged(enabled: Boolean) {
                if (!mediaFlags.isMediaControlsRefactorEnabled()) return
                if (!mediaFlags.isSceneContainerEnabled()) return
                if (isSeekBarEnabled == enabled) return
                isSeekBarEnabled = enabled
                MediaControlViewBinder.updateSeekBarVisibility(expandedLayout, isSeekBarEnabled)
@@ -229,7 +229,7 @@ constructor(
     * @param listening True when player should be active. Otherwise, false.
     */
    fun setListening(listening: Boolean) {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) return
        if (!mediaFlags.isSceneContainerEnabled()) return
        seekBarViewModel.listening = listening
    }

@@ -263,7 +263,7 @@ constructor(
                            )
                        )
                    }
                    if (mediaFlags.isMediaControlsRefactorEnabled()) {
                    if (mediaFlags.isSceneContainerEnabled()) {
                        if (
                            this@MediaViewController::recsConfigurationChangeListener.isInitialized
                        ) {
@@ -305,6 +305,7 @@ constructor(
     */
    var collapsedLayout = ConstraintSet()
        @VisibleForTesting set

    /**
     * The expanded constraint set used to render a collapsed player. If it is modified, make sure
     * to call [refreshState]
@@ -334,7 +335,7 @@ constructor(
     * Notify this controller that the view has been removed and all listeners should be destroyed
     */
    fun onDestroy() {
        if (mediaFlags.isMediaControlsRefactorEnabled()) {
        if (mediaFlags.isSceneContainerEnabled()) {
            if (this::seekBarObserver.isInitialized) {
                seekBarViewModel.progress.removeObserver(seekBarObserver)
            }
@@ -657,7 +658,7 @@ constructor(
        }

    fun attachPlayer(mediaViewHolder: MediaViewHolder) {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) return
        if (!mediaFlags.isSceneContainerEnabled()) return
        this.mediaViewHolder = mediaViewHolder

        // Setting up seek bar.
@@ -731,7 +732,7 @@ constructor(
    }

    fun updateAnimatorDurationScale() {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) return
        if (!mediaFlags.isSceneContainerEnabled()) return
        if (this::seekBarObserver.isInitialized) {
            seekBarObserver.animationEnabled =
                globalSettings.getFloat(Settings.Global.ANIMATOR_DURATION_SCALE, 1f) > 0f
@@ -787,7 +788,7 @@ constructor(
    }

    fun attachRecommendations(recommendationViewHolder: RecommendationViewHolder) {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) return
        if (!mediaFlags.isSceneContainerEnabled()) return
        this.recommendationViewHolder = recommendationViewHolder

        attach(recommendationViewHolder.recommendations, TYPE.RECOMMENDATION)
@@ -796,13 +797,13 @@ constructor(
    }

    fun bindSeekBar(onSeek: () -> Unit, onBindSeekBar: (SeekBarViewModel) -> Unit) {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) return
        if (!mediaFlags.isSceneContainerEnabled()) return
        seekBarViewModel.logSeek = onSeek
        onBindSeekBar.invoke(seekBarViewModel)
    }

    fun setUpTurbulenceNoise() {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) return
        if (!mediaFlags.isSceneContainerEnabled()) return
        if (!this::turbulenceNoiseAnimationConfig.isInitialized) {
            turbulenceNoiseAnimationConfig =
                createTurbulenceNoiseConfig(
@@ -1153,13 +1154,13 @@ constructor(
    }

    fun setUpPrevButtonInfo(isAvailable: Boolean, notVisibleValue: Int = ConstraintSet.GONE) {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) return
        if (!mediaFlags.isSceneContainerEnabled()) return
        isPrevButtonAvailable = isAvailable
        prevNotVisibleValue = notVisibleValue
    }

    fun setUpNextButtonInfo(isAvailable: Boolean, notVisibleValue: Int = ConstraintSet.GONE) {
        if (!mediaFlags.isMediaControlsRefactorEnabled()) return
        if (!mediaFlags.isSceneContainerEnabled()) return
        isNextButtonAvailable = isAvailable
        nextNotVisibleValue = notVisibleValue
    }
Loading