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

Commit c4766db6 authored by Tim Peng's avatar Tim Peng
Browse files

The Cast volume UI doesn't show up

-Call startScan() in SettingsLib and remove redundant api

Bug: 176774510
Test: atest MediaOutputAdapterTest MediaOutputControllerTest MediaOutputBaseDialogTest MediaOutputDialogTest MediaOutputGroupAdapterTest MediaOutputGroupDialogTest
Change-Id: I2a2f704f72f0eb056bb0d68fc10f34dbc117f07a
parent 21eeb8c9
Loading
Loading
Loading
Loading
+1 −11
Original line number Diff line number Diff line
@@ -24,7 +24,6 @@ import android.graphics.drawable.Drawable;
import android.graphics.drawable.Icon;
import android.media.MediaMetadata;
import android.media.MediaRoute2Info;
import android.media.MediaRouter2Manager;
import android.media.RoutingSessionInfo;
import android.media.session.MediaController;
import android.media.session.MediaSessionManager;
@@ -77,7 +76,6 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback {
    private final List<MediaDevice> mGroupMediaDevices = new CopyOnWriteArrayList<>();
    private final boolean mAboveStatusbar;
    private final NotificationEntryManager mNotificationEntryManager;
    private final MediaRouter2Manager mRouterManager;
    @VisibleForTesting
    final List<MediaDevice> mMediaDevices = new CopyOnWriteArrayList<>();

@@ -94,8 +92,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback {
    public MediaOutputController(@NonNull Context context, String packageName,
            boolean aboveStatusbar, MediaSessionManager mediaSessionManager, LocalBluetoothManager
            lbm, ShadeController shadeController, ActivityStarter starter,
            NotificationEntryManager notificationEntryManager, UiEventLogger uiEventLogger,
            MediaRouter2Manager routerManager) {
            NotificationEntryManager notificationEntryManager, UiEventLogger uiEventLogger) {
        mContext = context;
        mPackageName = packageName;
        mMediaSessionManager = mediaSessionManager;
@@ -107,7 +104,6 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback {
        mLocalMediaManager = new LocalMediaManager(mContext, lbm, imm, packageName);
        mMetricLogger = new MediaOutputMetricLogger(mContext, mPackageName);
        mUiEventLogger = uiEventLogger;
        mRouterManager = routerManager;
    }

    void start(@NonNull Callback cb) {
@@ -138,9 +134,6 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback {
        mLocalMediaManager.stopScan();
        mLocalMediaManager.registerCallback(this);
        mLocalMediaManager.startScan();
        if (mRouterManager != null) {
            mRouterManager.startScan();
        }
    }

    void stop() {
@@ -151,9 +144,6 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback {
            mLocalMediaManager.unregisterCallback(this);
            mLocalMediaManager.stopScan();
        }
        if (mRouterManager != null) {
            mRouterManager.stopScan();
        }
        mMediaDevices.clear();
    }

+2 −4
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@ package com.android.systemui.media.dialog

import android.content.Context
import android.media.session.MediaSessionManager
import android.media.MediaRouter2Manager
import com.android.internal.logging.UiEventLogger
import com.android.settingslib.bluetooth.LocalBluetoothManager
import com.android.systemui.plugins.ActivityStarter
@@ -36,8 +35,7 @@ class MediaOutputDialogFactory @Inject constructor(
    private val shadeController: ShadeController,
    private val starter: ActivityStarter,
    private val notificationEntryManager: NotificationEntryManager,
    private val uiEventLogger: UiEventLogger,
    private val routerManager: MediaRouter2Manager
    private val uiEventLogger: UiEventLogger
) {
    companion object {
        var mediaOutputDialog: MediaOutputDialog? = null
@@ -48,7 +46,7 @@ class MediaOutputDialogFactory @Inject constructor(
        mediaOutputDialog?.dismiss()
        mediaOutputDialog = MediaOutputController(context, packageName, aboveStatusBar,
                mediaSessionManager, lbm, shadeController, starter, notificationEntryManager,
                uiEventLogger, routerManager).run {
                uiEventLogger).run {
            MediaOutputDialog(context, aboveStatusBar, this, uiEventLogger)
        }
    }
+1 −3
Original line number Diff line number Diff line
@@ -24,7 +24,6 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import android.content.Context;
import android.media.MediaRouter2Manager;
import android.media.session.MediaSessionManager;
import android.os.Bundle;
import android.testing.AndroidTestingRunner;
@@ -64,7 +63,6 @@ public class MediaOutputBaseDialogTest extends SysuiTestCase {
    private NotificationEntryManager mNotificationEntryManager =
            mock(NotificationEntryManager.class);
    private final UiEventLogger mUiEventLogger = mock(UiEventLogger.class);
    private final MediaRouter2Manager mRouterManager = mock(MediaRouter2Manager.class);

    private MediaOutputBaseDialogImpl mMediaOutputBaseDialogImpl;
    private MediaOutputController mMediaOutputController;
@@ -77,7 +75,7 @@ public class MediaOutputBaseDialogTest extends SysuiTestCase {
    public void setUp() {
        mMediaOutputController = new MediaOutputController(mContext, TEST_PACKAGE, false,
                mMediaSessionManager, mLocalBluetoothManager, mShadeController, mStarter,
                mNotificationEntryManager, mUiEventLogger, mRouterManager);
                mNotificationEntryManager, mUiEventLogger);
        mMediaOutputBaseDialogImpl = new MediaOutputBaseDialogImpl(mContext,
                mMediaOutputController);
        mMediaOutputBaseDialogImpl.onCreate(new Bundle());
+4 −6
Original line number Diff line number Diff line
@@ -32,7 +32,6 @@ import android.content.Context;
import android.graphics.drawable.Icon;
import android.media.MediaDescription;
import android.media.MediaMetadata;
import android.media.MediaRouter2Manager;
import android.media.RoutingSessionInfo;
import android.media.session.MediaController;
import android.media.session.MediaSessionManager;
@@ -92,7 +91,6 @@ public class MediaOutputControllerTest extends SysuiTestCase {
    private NotificationEntryManager mNotificationEntryManager =
            mock(NotificationEntryManager.class);
    private final UiEventLogger mUiEventLogger = mock(UiEventLogger.class);
    private final MediaRouter2Manager mRouter2Manager = mock(MediaRouter2Manager.class);

    private Context mSpyContext;
    private MediaOutputController mMediaOutputController;
@@ -115,7 +113,7 @@ public class MediaOutputControllerTest extends SysuiTestCase {

        mMediaOutputController = new MediaOutputController(mSpyContext, TEST_PACKAGE_NAME, false,
                mMediaSessionManager, mLocalBluetoothManager, mShadeController, mStarter,
                mNotificationEntryManager, mUiEventLogger, mRouter2Manager);
                mNotificationEntryManager, mUiEventLogger);
        mLocalMediaManager = spy(mMediaOutputController.mLocalMediaManager);
        mMediaOutputController.mLocalMediaManager = mLocalMediaManager;
        MediaDescription.Builder builder = new MediaDescription.Builder();
@@ -159,7 +157,7 @@ public class MediaOutputControllerTest extends SysuiTestCase {
    public void start_withoutPackageName_verifyMediaControllerInit() {
        mMediaOutputController = new MediaOutputController(mSpyContext, null, false,
                mMediaSessionManager, mLocalBluetoothManager, mShadeController, mStarter,
                mNotificationEntryManager, mUiEventLogger, mRouter2Manager);
                mNotificationEntryManager, mUiEventLogger);

        mMediaOutputController.start(mCb);

@@ -180,7 +178,7 @@ public class MediaOutputControllerTest extends SysuiTestCase {
    public void stop_withoutPackageName_verifyMediaControllerDeinit() {
        mMediaOutputController = new MediaOutputController(mSpyContext, null, false,
                mMediaSessionManager, mLocalBluetoothManager, mShadeController, mStarter,
                mNotificationEntryManager, mUiEventLogger, mRouter2Manager);
                mNotificationEntryManager, mUiEventLogger);

        mMediaOutputController.start(mCb);

@@ -451,7 +449,7 @@ public class MediaOutputControllerTest extends SysuiTestCase {
    public void getNotificationLargeIcon_withoutPackageName_returnsNull() {
        mMediaOutputController = new MediaOutputController(mSpyContext, null, false,
                mMediaSessionManager, mLocalBluetoothManager, mShadeController, mStarter,
                mNotificationEntryManager, mUiEventLogger, mRouter2Manager);
                mNotificationEntryManager, mUiEventLogger);

        assertThat(mMediaOutputController.getNotificationIcon()).isNull();
    }
+1 −3
Original line number Diff line number Diff line
@@ -24,7 +24,6 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import android.media.MediaRoute2Info;
import android.media.MediaRouter2Manager;
import android.media.session.MediaSessionManager;
import android.testing.AndroidTestingRunner;
import android.testing.TestableLooper;
@@ -66,7 +65,6 @@ public class MediaOutputDialogTest extends SysuiTestCase {
    private final NotificationEntryManager mNotificationEntryManager =
            mock(NotificationEntryManager.class);
    private final UiEventLogger mUiEventLogger = mock(UiEventLogger.class);
    private final MediaRouter2Manager mRouterManager = mock(MediaRouter2Manager.class);

    private MediaOutputDialog mMediaOutputDialog;
    private MediaOutputController mMediaOutputController;
@@ -76,7 +74,7 @@ public class MediaOutputDialogTest extends SysuiTestCase {
    public void setUp() {
        mMediaOutputController = new MediaOutputController(mContext, TEST_PACKAGE, false,
                mMediaSessionManager, mLocalBluetoothManager, mShadeController, mStarter,
                mNotificationEntryManager, mUiEventLogger, mRouterManager);
                mNotificationEntryManager, mUiEventLogger);
        mMediaOutputController.mLocalMediaManager = mLocalMediaManager;
        mMediaOutputDialog = new MediaOutputDialog(mContext, false,
                mMediaOutputController, mUiEventLogger);
Loading