From 7a2bbdbb199ab5effe664462cf74517626b4b365 Mon Sep 17 00:00:00 2001 From: Caitlin Shkuratov Date: Tue, 18 Jul 2023 14:23:09 +0000 Subject: [PATCH 1/3] [Media] Remove MEDIA_NEARBY_DEVICES flag. Fixes: 254512726 Test: compiles Test: atest MediaOutputBaseDialogTest MediaOutputBroadcastDialogTest MediaOutputControllerTest MediaOutputDialogTest Change-Id: I80bc26bf798f6ac99ed6aee564f4808c5c95d51c Change-Id: Idde72a4fd2e21ecd20981283f03102baa4ccbed5 --- .../systemui/dagger/SysUIComponent.java | 2 +- .../src/com/android/systemui/flags/Flags.kt | 3 --- .../media/controls/util/MediaFlags.kt | 6 ------ .../systemui/media/dagger/MediaModule.java | 13 ------------- .../MediaOutputBroadcastDialogFactory.kt | 5 ++--- .../media/dialog/MediaOutputController.java | 7 +++---- .../media/dialog/MediaOutputDialogFactory.kt | 5 ++--- .../dialog/MediaOutputBaseDialogTest.java | 3 +-- .../MediaOutputBroadcastDialogTest.java | 3 +-- .../dialog/MediaOutputControllerTest.java | 19 +++++++++---------- .../media/dialog/MediaOutputDialogTest.java | 3 +-- 11 files changed, 20 insertions(+), 49 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java b/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java index d82bf587212e6..f1a58e6e8e51b 100644 --- a/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java +++ b/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java @@ -226,7 +226,7 @@ public interface SysUIComponent { Optional getMediaMuteAwaitConnectionCli(); /** */ - Optional getNearbyMediaDevicesManager(); + NearbyMediaDevicesManager getNearbyMediaDevicesManager(); /** * Returns {@link CoreStartable}s that should be started with the application. diff --git a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt index add323983928f..a05dd1321de65 100644 --- a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt +++ b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt @@ -411,9 +411,6 @@ object Flags { // TODO(b/254512502): Tracking Bug val MEDIA_SESSION_ACTIONS = unreleasedFlag(901, "media_session_actions") - // TODO(b/254512726): Tracking Bug - val MEDIA_NEARBY_DEVICES = releasedFlag(903, "media_nearby_devices") - // TODO(b/254512695): Tracking Bug val MEDIA_MUTE_AWAIT = releasedFlag(904, "media_mute_await") diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/util/MediaFlags.kt b/packages/SystemUI/src/com/android/systemui/media/controls/util/MediaFlags.kt index 01f047ccd4f56..07577023d3d6d 100644 --- a/packages/SystemUI/src/com/android/systemui/media/controls/util/MediaFlags.kt +++ b/packages/SystemUI/src/com/android/systemui/media/controls/util/MediaFlags.kt @@ -37,12 +37,6 @@ class MediaFlags @Inject constructor(private val featureFlags: FeatureFlags) { /** Check whether we support displaying information about mute await connections. */ fun areMuteAwaitConnectionsEnabled() = featureFlags.isEnabled(Flags.MEDIA_MUTE_AWAIT) - /** - * Check whether we enable support for nearby media devices. See - * [android.app.StatusBarManager.registerNearbyMediaDevicesProvider] for more information. - */ - fun areNearbyMediaDevicesEnabled() = featureFlags.isEnabled(Flags.MEDIA_NEARBY_DEVICES) - /** * If true, keep active media controls for the lifetime of the MediaSession, regardless of * whether the underlying notification was dismissed diff --git a/packages/SystemUI/src/com/android/systemui/media/dagger/MediaModule.java b/packages/SystemUI/src/com/android/systemui/media/dagger/MediaModule.java index 46efac56ab9df..bc61ec12da850 100644 --- a/packages/SystemUI/src/com/android/systemui/media/dagger/MediaModule.java +++ b/packages/SystemUI/src/com/android/systemui/media/dagger/MediaModule.java @@ -26,7 +26,6 @@ import com.android.systemui.media.controls.ui.MediaHostStatesManager; import com.android.systemui.media.controls.util.MediaFlags; import com.android.systemui.media.dream.dagger.MediaComplicationComponent; import com.android.systemui.media.muteawait.MediaMuteAwaitConnectionCli; -import com.android.systemui.media.nearby.NearbyMediaDevicesManager; import com.android.systemui.media.taptotransfer.MediaTttCommandLineHelper; import com.android.systemui.media.taptotransfer.MediaTttFlags; import com.android.systemui.media.taptotransfer.receiver.MediaTttReceiverLogBuffer; @@ -132,16 +131,4 @@ public interface MediaModule { } return Optional.of(muteAwaitConnectionCliLazy.get()); } - - /** */ - @Provides - @SysUISingleton - static Optional providesNearbyMediaDevicesManager( - MediaFlags mediaFlags, - Lazy nearbyMediaDevicesManagerLazy) { - if (!mediaFlags.areNearbyMediaDevicesEnabled()) { - return Optional.empty(); - } - return Optional.of(nearbyMediaDevicesManagerLazy.get()); - } } diff --git a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBroadcastDialogFactory.kt b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBroadcastDialogFactory.kt index a1e9995dd6950..18d51030197aa 100644 --- a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBroadcastDialogFactory.kt +++ b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBroadcastDialogFactory.kt @@ -31,7 +31,6 @@ import com.android.systemui.media.nearby.NearbyMediaDevicesManager import com.android.systemui.plugins.ActivityStarter import com.android.systemui.settings.UserTracker import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection -import java.util.Optional import javax.inject.Inject /** @@ -46,7 +45,7 @@ class MediaOutputBroadcastDialogFactory @Inject constructor( private val notifCollection: CommonNotifCollection, private val uiEventLogger: UiEventLogger, private val dialogLaunchAnimator: DialogLaunchAnimator, - private val nearbyMediaDevicesManagerOptional: Optional, + private val nearbyMediaDevicesManager: NearbyMediaDevicesManager, private val audioManager: AudioManager, private val powerExemptionManager: PowerExemptionManager, private val keyGuardManager: KeyguardManager, @@ -62,7 +61,7 @@ class MediaOutputBroadcastDialogFactory @Inject constructor( val controller = MediaOutputController(context, packageName, mediaSessionManager, lbm, starter, notifCollection, - dialogLaunchAnimator, nearbyMediaDevicesManagerOptional, audioManager, + dialogLaunchAnimator, nearbyMediaDevicesManager, audioManager, powerExemptionManager, keyGuardManager, featureFlags, userTracker) val dialog = MediaOutputBroadcastDialog(context, aboveStatusBar, broadcastSender, controller) diff --git a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputController.java b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputController.java index cc75478ef506b..b6ca0b025a145 100644 --- a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputController.java +++ b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputController.java @@ -99,7 +99,6 @@ import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.Optional; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.CopyOnWriteArrayList; @@ -177,7 +176,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, lbm, ActivityStarter starter, CommonNotifCollection notifCollection, DialogLaunchAnimator dialogLaunchAnimator, - Optional nearbyMediaDevicesManagerOptional, + NearbyMediaDevicesManager nearbyMediaDevicesManager, AudioManager audioManager, PowerExemptionManager powerExemptionManager, KeyguardManager keyGuardManager, @@ -198,7 +197,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, mLocalMediaManager = new LocalMediaManager(mContext, lbm, imm, packageName); mMetricLogger = new MediaOutputMetricLogger(mContext, mPackageName); mDialogLaunchAnimator = dialogLaunchAnimator; - mNearbyMediaDevicesManager = nearbyMediaDevicesManagerOptional.orElse(null); + mNearbyMediaDevicesManager = nearbyMediaDevicesManager; mColorItemContent = Utils.getColorStateListDefaultColor(mContext, R.color.media_dialog_item_main_content); mColorSeekbarProgress = Utils.getColorStateListDefaultColor(mContext, @@ -927,7 +926,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, void launchMediaOutputBroadcastDialog(View mediaOutputDialog, BroadcastSender broadcastSender) { MediaOutputController controller = new MediaOutputController(mContext, mPackageName, mMediaSessionManager, mLocalBluetoothManager, mActivityStarter, - mNotifCollection, mDialogLaunchAnimator, Optional.of(mNearbyMediaDevicesManager), + mNotifCollection, mDialogLaunchAnimator, mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyGuardManager, mFeatureFlags, mUserTracker); MediaOutputBroadcastDialog dialog = new MediaOutputBroadcastDialog(mContext, true, diff --git a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialogFactory.kt b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialogFactory.kt index 4c168ecb81af3..af659378e8f72 100644 --- a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialogFactory.kt +++ b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialogFactory.kt @@ -33,7 +33,6 @@ import com.android.systemui.media.nearby.NearbyMediaDevicesManager import com.android.systemui.plugins.ActivityStarter import com.android.systemui.settings.UserTracker import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection -import java.util.Optional import javax.inject.Inject /** @@ -48,7 +47,7 @@ class MediaOutputDialogFactory @Inject constructor( private val notifCollection: CommonNotifCollection, private val uiEventLogger: UiEventLogger, private val dialogLaunchAnimator: DialogLaunchAnimator, - private val nearbyMediaDevicesManagerOptional: Optional, + private val nearbyMediaDevicesManager: NearbyMediaDevicesManager, private val audioManager: AudioManager, private val powerExemptionManager: PowerExemptionManager, private val keyGuardManager: KeyguardManager, @@ -68,7 +67,7 @@ class MediaOutputDialogFactory @Inject constructor( val controller = MediaOutputController( context, packageName, mediaSessionManager, lbm, starter, notifCollection, - dialogLaunchAnimator, nearbyMediaDevicesManagerOptional, audioManager, + dialogLaunchAnimator, nearbyMediaDevicesManager, audioManager, powerExemptionManager, keyGuardManager, featureFlags, userTracker) val dialog = MediaOutputDialog(context, aboveStatusBar, broadcastSender, controller, diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBaseDialogTest.java b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBaseDialogTest.java index f79c53d10b524..ab24c46825e40 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBaseDialogTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBaseDialogTest.java @@ -63,7 +63,6 @@ import org.junit.runner.RunWith; import java.util.ArrayList; import java.util.List; -import java.util.Optional; @SmallTest @RunWith(AndroidTestingRunner.class) @@ -124,7 +123,7 @@ public class MediaOutputBaseDialogTest extends SysuiTestCase { mMediaOutputController = new MediaOutputController(mContext, TEST_PACKAGE, mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); mMediaOutputBaseDialogImpl = new MediaOutputBaseDialogImpl(mContext, mBroadcastSender, mMediaOutputController); diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBroadcastDialogTest.java b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBroadcastDialogTest.java index f8971fd7c99c7..45e8e270c3de6 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBroadcastDialogTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBroadcastDialogTest.java @@ -70,7 +70,6 @@ import org.junit.runner.RunWith; import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.List; -import java.util.Optional; @SmallTest @RunWith(AndroidTestingRunner.class) @@ -126,7 +125,7 @@ public class MediaOutputBroadcastDialogTest extends SysuiTestCase { mMediaOutputController = new MediaOutputController(mContext, TEST_PACKAGE, mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); mMediaOutputController.mLocalMediaManager = mLocalMediaManager; mMediaOutputBroadcastDialog = new MediaOutputBroadcastDialog(mContext, false, diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputControllerTest.java index 9f06b5fcc9030..a59ea20ead269 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputControllerTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputControllerTest.java @@ -93,7 +93,6 @@ import org.mockito.MockitoAnnotations; import java.util.ArrayList; import java.util.List; -import java.util.Optional; @SmallTest @RunWith(AndroidTestingRunner.class) @@ -197,7 +196,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mMediaOutputController = new MediaOutputController(mSpyContext, TEST_PACKAGE_NAME, mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); mLocalMediaManager = spy(mMediaOutputController.mLocalMediaManager); when(mLocalMediaManager.isPreferenceRouteListingExist()).thenReturn(false); @@ -279,7 +278,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mMediaOutputController = new MediaOutputController(mSpyContext, null, mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); mMediaOutputController.start(mCb); @@ -309,7 +308,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mMediaOutputController = new MediaOutputController(mSpyContext, null, mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); mMediaOutputController.start(mCb); @@ -530,7 +529,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { "", mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); testMediaOutputController.start(mCb); reset(mCb); @@ -553,7 +552,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { "", mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); testMediaOutputController.start(mCb); reset(mCb); @@ -589,7 +588,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { null, mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); LocalMediaManager testLocalMediaManager = spy(testMediaOutputController.mLocalMediaManager); @@ -606,7 +605,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { null, mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); LocalMediaManager testLocalMediaManager = spy(testMediaOutputController.mLocalMediaManager); @@ -888,7 +887,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mMediaOutputController = new MediaOutputController(mSpyContext, null, mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); assertThat(mMediaOutputController.getNotificationIcon()).isNull(); @@ -1080,7 +1079,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { null, mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); testMediaOutputController.setTemporaryAllowListExceptionIfNeeded(mMediaDevice2); diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputDialogTest.java b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputDialogTest.java index a14ff2f72f1fd..3e69a29bd963f 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputDialogTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputDialogTest.java @@ -67,7 +67,6 @@ import org.mockito.Mockito; import java.util.ArrayList; import java.util.List; -import java.util.Optional; import java.util.function.Consumer; @MediumTest @@ -132,7 +131,7 @@ public class MediaOutputDialogTest extends SysuiTestCase { mMediaOutputController = new MediaOutputController(mContext, TEST_PACKAGE, mMediaSessionManager, mLocalBluetoothManager, mStarter, mNotifCollection, mDialogLaunchAnimator, - Optional.of(mNearbyMediaDevicesManager), mAudioManager, mPowerExemptionManager, + mNearbyMediaDevicesManager, mAudioManager, mPowerExemptionManager, mKeyguardManager, mFlags, mUserTracker); mMediaOutputController.mLocalMediaManager = mLocalMediaManager; mMediaOutputDialog = makeTestDialog(mMediaOutputController); From b2a8c5bfec559832ded2cb01a5140f350f445f3d Mon Sep 17 00:00:00 2001 From: Caitlin Shkuratov Date: Tue, 18 Jul 2023 16:06:47 +0000 Subject: [PATCH 2/3] [Media] Remove MEDIA_MUTE_AWAIT flag. Fixes: 254512695 Test: compiles Test: atest MediaDeviceManagerTest Change-Id: I7dc249dfea01559d3212d659b655b232aa3a1119 --- .../android/systemui/dagger/SysUIComponent.java | 2 +- .../src/com/android/systemui/flags/Flags.kt | 3 --- .../media/controls/pipeline/MediaDeviceManager.kt | 6 +++--- .../systemui/media/controls/util/MediaFlags.kt | 3 --- .../systemui/media/dagger/MediaModule.java | 15 --------------- .../MediaMuteAwaitConnectionManagerFactory.kt | 7 +------ 6 files changed, 5 insertions(+), 31 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java b/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java index f1a58e6e8e51b..6fdb4ca7238f8 100644 --- a/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java +++ b/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java @@ -223,7 +223,7 @@ public interface SysUIComponent { Optional getNaturalRotationUnfoldProgressProvider(); /** */ - Optional getMediaMuteAwaitConnectionCli(); + MediaMuteAwaitConnectionCli getMediaMuteAwaitConnectionCli(); /** */ NearbyMediaDevicesManager getNearbyMediaDevicesManager(); diff --git a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt index a05dd1321de65..289ad129edf8f 100644 --- a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt +++ b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt @@ -411,9 +411,6 @@ object Flags { // TODO(b/254512502): Tracking Bug val MEDIA_SESSION_ACTIONS = unreleasedFlag(901, "media_session_actions") - // TODO(b/254512695): Tracking Bug - val MEDIA_MUTE_AWAIT = releasedFlag(904, "media_mute_await") - // TODO(b/254512654): Tracking Bug @JvmField val DREAM_MEDIA_COMPLICATION = unreleasedFlag(905, "dream_media_complication") diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/pipeline/MediaDeviceManager.kt b/packages/SystemUI/src/com/android/systemui/media/controls/pipeline/MediaDeviceManager.kt index 3fc3ad682bc73..0a5f857af4ad1 100644 --- a/packages/SystemUI/src/com/android/systemui/media/controls/pipeline/MediaDeviceManager.kt +++ b/packages/SystemUI/src/com/android/systemui/media/controls/pipeline/MediaDeviceManager.kt @@ -144,7 +144,7 @@ constructor( val oldKey: String?, val controller: MediaController?, val localMediaManager: LocalMediaManager, - val muteAwaitConnectionManager: MediaMuteAwaitConnectionManager? + val muteAwaitConnectionManager: MediaMuteAwaitConnectionManager, ) : LocalMediaManager.DeviceCallback, MediaController.Callback(), @@ -180,7 +180,7 @@ constructor( if (!started) { localMediaManager.registerCallback(this) localMediaManager.startScan() - muteAwaitConnectionManager?.startListening() + muteAwaitConnectionManager.startListening() playbackType = controller?.playbackInfo?.playbackType ?: PLAYBACK_TYPE_UNKNOWN playbackVolumeControlId = controller?.playbackInfo?.volumeControlId controller?.registerCallback(this) @@ -198,7 +198,7 @@ constructor( controller?.unregisterCallback(this) localMediaManager.stopScan() localMediaManager.unregisterCallback(this) - muteAwaitConnectionManager?.stopListening() + muteAwaitConnectionManager.stopListening() configurationController.removeCallback(configListener) } } diff --git a/packages/SystemUI/src/com/android/systemui/media/controls/util/MediaFlags.kt b/packages/SystemUI/src/com/android/systemui/media/controls/util/MediaFlags.kt index 07577023d3d6d..42a6b7cf4b0d5 100644 --- a/packages/SystemUI/src/com/android/systemui/media/controls/util/MediaFlags.kt +++ b/packages/SystemUI/src/com/android/systemui/media/controls/util/MediaFlags.kt @@ -34,9 +34,6 @@ class MediaFlags @Inject constructor(private val featureFlags: FeatureFlags) { return enabled || featureFlags.isEnabled(Flags.MEDIA_SESSION_ACTIONS) } - /** Check whether we support displaying information about mute await connections. */ - fun areMuteAwaitConnectionsEnabled() = featureFlags.isEnabled(Flags.MEDIA_MUTE_AWAIT) - /** * If true, keep active media controls for the lifetime of the MediaSession, regardless of * whether the underlying notification was dismissed diff --git a/packages/SystemUI/src/com/android/systemui/media/dagger/MediaModule.java b/packages/SystemUI/src/com/android/systemui/media/dagger/MediaModule.java index bc61ec12da850..888cd0bf8b9ae 100644 --- a/packages/SystemUI/src/com/android/systemui/media/dagger/MediaModule.java +++ b/packages/SystemUI/src/com/android/systemui/media/dagger/MediaModule.java @@ -23,9 +23,7 @@ import com.android.systemui.media.controls.pipeline.MediaDataManager; import com.android.systemui.media.controls.ui.MediaHierarchyManager; import com.android.systemui.media.controls.ui.MediaHost; import com.android.systemui.media.controls.ui.MediaHostStatesManager; -import com.android.systemui.media.controls.util.MediaFlags; import com.android.systemui.media.dream.dagger.MediaComplicationComponent; -import com.android.systemui.media.muteawait.MediaMuteAwaitConnectionCli; import com.android.systemui.media.taptotransfer.MediaTttCommandLineHelper; import com.android.systemui.media.taptotransfer.MediaTttFlags; import com.android.systemui.media.taptotransfer.receiver.MediaTttReceiverLogBuffer; @@ -118,17 +116,4 @@ public interface MediaModule { } return Optional.of(helperLazy.get()); } - - /** */ - @Provides - @SysUISingleton - static Optional providesMediaMuteAwaitConnectionCli( - MediaFlags mediaFlags, - Lazy muteAwaitConnectionCliLazy - ) { - if (!mediaFlags.areMuteAwaitConnectionsEnabled()) { - return Optional.empty(); - } - return Optional.of(muteAwaitConnectionCliLazy.get()); - } } diff --git a/packages/SystemUI/src/com/android/systemui/media/muteawait/MediaMuteAwaitConnectionManagerFactory.kt b/packages/SystemUI/src/com/android/systemui/media/muteawait/MediaMuteAwaitConnectionManagerFactory.kt index e26089450c21d..97ec654a627b8 100644 --- a/packages/SystemUI/src/com/android/systemui/media/muteawait/MediaMuteAwaitConnectionManagerFactory.kt +++ b/packages/SystemUI/src/com/android/systemui/media/muteawait/MediaMuteAwaitConnectionManagerFactory.kt @@ -21,14 +21,12 @@ import com.android.settingslib.media.DeviceIconUtil import com.android.settingslib.media.LocalMediaManager import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Main -import com.android.systemui.media.controls.util.MediaFlags import java.util.concurrent.Executor import javax.inject.Inject /** Factory class to create [MediaMuteAwaitConnectionManager] instances. */ @SysUISingleton class MediaMuteAwaitConnectionManagerFactory @Inject constructor( - private val mediaFlags: MediaFlags, private val context: Context, private val logger: MediaMuteAwaitLogger, @Main private val mainExecutor: Executor @@ -36,10 +34,7 @@ class MediaMuteAwaitConnectionManagerFactory @Inject constructor( private val deviceIconUtil = DeviceIconUtil() /** Creates a [MediaMuteAwaitConnectionManager]. */ - fun create(localMediaManager: LocalMediaManager): MediaMuteAwaitConnectionManager? { - if (!mediaFlags.areMuteAwaitConnectionsEnabled()) { - return null - } + fun create(localMediaManager: LocalMediaManager): MediaMuteAwaitConnectionManager { return MediaMuteAwaitConnectionManager( mainExecutor, localMediaManager, context, deviceIconUtil, logger ) From e697fa0315dca87efe53396435f478eb081bbc05 Mon Sep 17 00:00:00 2001 From: Caitlin Shkuratov Date: Tue, 18 Jul 2023 16:31:26 +0000 Subject: [PATCH 3/3] [Media] Remove MEDIA_TAP_TO_TRANSFER_DISMISS_GESTURE flag. Fixes: 265813373 Test: compiles Test: atest ChipbarCoordinatorTest Change-Id: I5f40ffba82c24ea4ed6350fe8c17b5aec504db9e --- .../src/com/android/systemui/flags/Flags.kt | 3 --- .../media/taptotransfer/MediaTttFlags.kt | 4 ---- .../chipbar/ChipbarCoordinator.kt | 6 +----- .../chipbar/SwipeChipbarAwayGestureHandler.kt | 7 ++++++- .../dagger/TemporaryDisplayModule.kt | 20 ------------------- 5 files changed, 7 insertions(+), 33 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt index 289ad129edf8f..b6f969d7b7844 100644 --- a/packages/SystemUI/src/com/android/systemui/flags/Flags.kt +++ b/packages/SystemUI/src/com/android/systemui/flags/Flags.kt @@ -426,9 +426,6 @@ object Flags { // TODO(b/263272731): Tracking Bug val MEDIA_TTT_RECEIVER_SUCCESS_RIPPLE = releasedFlag(910, "media_ttt_receiver_success_ripple") - // TODO(b/265813373): Tracking Bug - val MEDIA_TAP_TO_TRANSFER_DISMISS_GESTURE = releasedFlag(912, "media_ttt_dismiss_gesture") - // TODO(b/266157412): Tracking Bug val MEDIA_RETAIN_SESSIONS = unreleasedFlag(913, "media_retain_sessions") diff --git a/packages/SystemUI/src/com/android/systemui/media/taptotransfer/MediaTttFlags.kt b/packages/SystemUI/src/com/android/systemui/media/taptotransfer/MediaTttFlags.kt index 60504e43465a3..8a565fa86b353 100644 --- a/packages/SystemUI/src/com/android/systemui/media/taptotransfer/MediaTttFlags.kt +++ b/packages/SystemUI/src/com/android/systemui/media/taptotransfer/MediaTttFlags.kt @@ -30,8 +30,4 @@ class MediaTttFlags @Inject constructor(private val featureFlags: FeatureFlags) /** Check whether the flag for the receiver success state is enabled. */ fun isMediaTttReceiverSuccessRippleEnabled(): Boolean = featureFlags.isEnabled(Flags.MEDIA_TTT_RECEIVER_SUCCESS_RIPPLE) - - /** True if the media transfer chip can be dismissed via a gesture. */ - fun isMediaTttDismissGestureEnabled(): Boolean = - featureFlags.isEnabled(Flags.MEDIA_TAP_TO_TRANSFER_DISMISS_GESTURE) } diff --git a/packages/SystemUI/src/com/android/systemui/temporarydisplay/chipbar/ChipbarCoordinator.kt b/packages/SystemUI/src/com/android/systemui/temporarydisplay/chipbar/ChipbarCoordinator.kt index 7ed56e72f7594..7aeba666c95ab 100644 --- a/packages/SystemUI/src/com/android/systemui/temporarydisplay/chipbar/ChipbarCoordinator.kt +++ b/packages/SystemUI/src/com/android/systemui/temporarydisplay/chipbar/ChipbarCoordinator.kt @@ -88,7 +88,7 @@ constructor( private val chipbarAnimator: ChipbarAnimator, private val falsingManager: FalsingManager, private val falsingCollector: FalsingCollector, - private val swipeChipbarAwayGestureHandler: SwipeChipbarAwayGestureHandler?, + private val swipeChipbarAwayGestureHandler: SwipeChipbarAwayGestureHandler, private val viewUtil: ViewUtil, private val vibratorHelper: VibratorHelper, wakeLockBuilder: WakeLock.Builder, @@ -289,10 +289,6 @@ constructor( } private fun updateGestureListening() { - if (swipeChipbarAwayGestureHandler == null) { - return - } - val currentDisplayInfo = getCurrentDisplayInfo() if (currentDisplayInfo != null && currentDisplayInfo.info.allowSwipeToDismiss) { swipeChipbarAwayGestureHandler.setViewFetcher { currentDisplayInfo.view } diff --git a/packages/SystemUI/src/com/android/systemui/temporarydisplay/chipbar/SwipeChipbarAwayGestureHandler.kt b/packages/SystemUI/src/com/android/systemui/temporarydisplay/chipbar/SwipeChipbarAwayGestureHandler.kt index 9dbc4b398ab35..80de52332c238 100644 --- a/packages/SystemUI/src/com/android/systemui/temporarydisplay/chipbar/SwipeChipbarAwayGestureHandler.kt +++ b/packages/SystemUI/src/com/android/systemui/temporarydisplay/chipbar/SwipeChipbarAwayGestureHandler.kt @@ -19,10 +19,12 @@ package com.android.systemui.temporarydisplay.chipbar import android.content.Context import android.view.MotionEvent import android.view.View +import com.android.systemui.dagger.SysUISingleton import com.android.systemui.settings.DisplayTracker import com.android.systemui.statusbar.gesture.SwipeUpGestureHandler import com.android.systemui.statusbar.gesture.SwipeUpGestureLogger import com.android.systemui.util.boundsOnScreen +import javax.inject.Inject /** * A class to detect when a user has swiped the chipbar away. @@ -30,7 +32,10 @@ import com.android.systemui.util.boundsOnScreen * Effectively [SysUISingleton]. But, this shouldn't be created if the gesture isn't enabled. See * [TemporaryDisplayModule.provideSwipeChipbarAwayGestureHandler]. */ -class SwipeChipbarAwayGestureHandler( +@SysUISingleton +class SwipeChipbarAwayGestureHandler +@Inject +constructor( context: Context, displayTracker: DisplayTracker, logger: SwipeUpGestureLogger, diff --git a/packages/SystemUI/src/com/android/systemui/temporarydisplay/dagger/TemporaryDisplayModule.kt b/packages/SystemUI/src/com/android/systemui/temporarydisplay/dagger/TemporaryDisplayModule.kt index cae13086f5925..2d055736dcc38 100644 --- a/packages/SystemUI/src/com/android/systemui/temporarydisplay/dagger/TemporaryDisplayModule.kt +++ b/packages/SystemUI/src/com/android/systemui/temporarydisplay/dagger/TemporaryDisplayModule.kt @@ -16,14 +16,9 @@ package com.android.systemui.temporarydisplay.dagger -import android.content.Context import com.android.systemui.dagger.SysUISingleton import com.android.systemui.log.LogBuffer import com.android.systemui.log.LogBufferFactory -import com.android.systemui.media.taptotransfer.MediaTttFlags -import com.android.systemui.settings.DisplayTracker -import com.android.systemui.statusbar.gesture.SwipeUpGestureLogger -import com.android.systemui.temporarydisplay.chipbar.SwipeChipbarAwayGestureHandler import dagger.Module import dagger.Provides @@ -36,20 +31,5 @@ interface TemporaryDisplayModule { fun provideChipbarLogBuffer(factory: LogBufferFactory): LogBuffer { return factory.create("ChipbarLog", 40) } - - @Provides - @SysUISingleton - fun provideSwipeChipbarAwayGestureHandler( - mediaTttFlags: MediaTttFlags, - context: Context, - displayTracker: DisplayTracker, - logger: SwipeUpGestureLogger, - ): SwipeChipbarAwayGestureHandler? { - return if (mediaTttFlags.isMediaTttDismissGestureEnabled()) { - SwipeChipbarAwayGestureHandler(context, displayTracker, logger) - } else { - null - } - } } }