Loading packages/SystemUI/src/com/android/systemui/media/controls/domain/MediaDomainModule.kt +2 −1 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ interface MediaDomainModule { @IntoMap @ClassKey(MediaDataProcessor::class) fun bindMediaDataProcessor(interactor: MediaDataProcessor): CoreStartable companion object { @Provides Loading @@ -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() Loading packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaDataProcessor.kt +2 −3 Original line number Diff line number Diff line Loading @@ -269,7 +269,7 @@ class MediaDataProcessor( } override fun start() { if (!mediaFlags.isMediaControlsRefactorEnabled()) { if (!mediaFlags.isSceneContainerEnabled()) { return } Loading Loading @@ -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) Loading packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaCarouselInteractor.kt +3 −5 Original line number Diff line number Diff line Loading @@ -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 Loading Loading @@ -127,7 +127,7 @@ constructor( val currentMedia: StateFlow<List<MediaCommonModel>> = mediaFilterRepository.currentMedia override fun start() { if (!mediaFlags.isMediaControlsRefactorEnabled()) { if (!mediaFlags.isSceneContainerEnabled()) { return } Loading Loading @@ -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") } } packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaCarouselController.kt +11 −12 Original line number Diff line number Diff line Loading @@ -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() } Loading Loading @@ -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 { Loading Loading @@ -389,7 +389,7 @@ constructor( listenForAnyStateToLockscreenTransition(this) listenForLockscreenSettingChanges(this) if (!mediaFlags.isMediaControlsRefactorEnabled()) return@repeatOnLifecycle if (!mediaFlags.isSceneContainerEnabled()) return@repeatOnLifecycle listenForMediaItemsChanges(this) } } Loading Loading @@ -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. Loading Loading @@ -1092,7 +1091,7 @@ constructor( } private fun updatePlayers(recreateMedia: Boolean) { if (mediaFlags.isMediaControlsRefactorEnabled()) { if (mediaFlags.isSceneContainerEnabled()) { updateMediaPlayers(recreateMedia) return } Loading Loading @@ -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) } Loading Loading @@ -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) } Loading @@ -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 Loading Loading @@ -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( Loading Loading @@ -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) } Loading Loading @@ -1544,7 +1543,7 @@ constructor( @VisibleForTesting fun onSwipeToDismiss() { if (mediaFlags.isMediaControlsRefactorEnabled()) { if (mediaFlags.isSceneContainerEnabled()) { mediaCarouselViewModel.onSwipeToDismiss() return } Loading packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaViewController.kt +13 −12 Original line number Diff line number Diff line Loading @@ -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() Loading @@ -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) Loading @@ -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 } Loading Loading @@ -263,7 +263,7 @@ constructor( ) ) } if (mediaFlags.isMediaControlsRefactorEnabled()) { if (mediaFlags.isSceneContainerEnabled()) { if ( this@MediaViewController::recsConfigurationChangeListener.isInitialized ) { Loading Loading @@ -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] Loading Loading @@ -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) } Loading Loading @@ -657,7 +658,7 @@ constructor( } fun attachPlayer(mediaViewHolder: MediaViewHolder) { if (!mediaFlags.isMediaControlsRefactorEnabled()) return if (!mediaFlags.isSceneContainerEnabled()) return this.mediaViewHolder = mediaViewHolder // Setting up seek bar. Loading Loading @@ -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 Loading Loading @@ -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) Loading @@ -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( Loading Loading @@ -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 Loading
packages/SystemUI/src/com/android/systemui/media/controls/domain/MediaDomainModule.kt +2 −1 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ interface MediaDomainModule { @IntoMap @ClassKey(MediaDataProcessor::class) fun bindMediaDataProcessor(interactor: MediaDataProcessor): CoreStartable companion object { @Provides Loading @@ -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() Loading
packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/MediaDataProcessor.kt +2 −3 Original line number Diff line number Diff line Loading @@ -269,7 +269,7 @@ class MediaDataProcessor( } override fun start() { if (!mediaFlags.isMediaControlsRefactorEnabled()) { if (!mediaFlags.isSceneContainerEnabled()) { return } Loading Loading @@ -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) Loading
packages/SystemUI/src/com/android/systemui/media/controls/domain/pipeline/interactor/MediaCarouselInteractor.kt +3 −5 Original line number Diff line number Diff line Loading @@ -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 Loading Loading @@ -127,7 +127,7 @@ constructor( val currentMedia: StateFlow<List<MediaCommonModel>> = mediaFilterRepository.currentMedia override fun start() { if (!mediaFlags.isMediaControlsRefactorEnabled()) { if (!mediaFlags.isSceneContainerEnabled()) { return } Loading Loading @@ -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") } }
packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaCarouselController.kt +11 −12 Original line number Diff line number Diff line Loading @@ -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() } Loading Loading @@ -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 { Loading Loading @@ -389,7 +389,7 @@ constructor( listenForAnyStateToLockscreenTransition(this) listenForLockscreenSettingChanges(this) if (!mediaFlags.isMediaControlsRefactorEnabled()) return@repeatOnLifecycle if (!mediaFlags.isSceneContainerEnabled()) return@repeatOnLifecycle listenForMediaItemsChanges(this) } } Loading Loading @@ -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. Loading Loading @@ -1092,7 +1091,7 @@ constructor( } private fun updatePlayers(recreateMedia: Boolean) { if (mediaFlags.isMediaControlsRefactorEnabled()) { if (mediaFlags.isSceneContainerEnabled()) { updateMediaPlayers(recreateMedia) return } Loading Loading @@ -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) } Loading Loading @@ -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) } Loading @@ -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 Loading Loading @@ -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( Loading Loading @@ -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) } Loading Loading @@ -1544,7 +1543,7 @@ constructor( @VisibleForTesting fun onSwipeToDismiss() { if (mediaFlags.isMediaControlsRefactorEnabled()) { if (mediaFlags.isSceneContainerEnabled()) { mediaCarouselViewModel.onSwipeToDismiss() return } Loading
packages/SystemUI/src/com/android/systemui/media/controls/ui/controller/MediaViewController.kt +13 −12 Original line number Diff line number Diff line Loading @@ -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() Loading @@ -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) Loading @@ -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 } Loading Loading @@ -263,7 +263,7 @@ constructor( ) ) } if (mediaFlags.isMediaControlsRefactorEnabled()) { if (mediaFlags.isSceneContainerEnabled()) { if ( this@MediaViewController::recsConfigurationChangeListener.isInitialized ) { Loading Loading @@ -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] Loading Loading @@ -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) } Loading Loading @@ -657,7 +658,7 @@ constructor( } fun attachPlayer(mediaViewHolder: MediaViewHolder) { if (!mediaFlags.isMediaControlsRefactorEnabled()) return if (!mediaFlags.isSceneContainerEnabled()) return this.mediaViewHolder = mediaViewHolder // Setting up seek bar. Loading Loading @@ -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 Loading Loading @@ -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) Loading @@ -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( Loading Loading @@ -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