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

Commit 658dc359 authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

Merge "Use Singleton LocalBluetoothManager in SystemUI" into rvc-dev am: e5549372 am: a94c2538

Change-Id: If37883ca01fad24ac28af3a917db6713517bc0a3
parents 97894025 a94c2538
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -108,14 +108,12 @@ public class LocalMediaManager implements BluetoothCallback {
                new InfoMediaManager(context, packageName, notification, mLocalBluetoothManager);
    }

    @VisibleForTesting
    LocalMediaManager(Context context, LocalBluetoothManager localBluetoothManager,
    public LocalMediaManager(Context context, LocalBluetoothManager localBluetoothManager,
            InfoMediaManager infoMediaManager, String packageName) {
        mContext = context;
        mLocalBluetoothManager = localBluetoothManager;
        mInfoMediaManager = infoMediaManager;
        mPackageName = packageName;

    }

    /**
+9 −2
Original line number Diff line number Diff line
@@ -44,6 +44,8 @@ import android.widget.LinearLayout;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settingslib.Utils;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.media.InfoMediaManager;
import com.android.settingslib.media.LocalMediaManager;
import com.android.settingslib.media.MediaDevice;
import com.android.systemui.Dependency;
@@ -98,6 +100,7 @@ public class QSPanel extends LinearLayout implements Tunable, Callback, Brightne
    private final LinearLayout mMediaCarousel;
    private final ArrayList<QSMediaPlayer> mMediaPlayers = new ArrayList<>();
    private final NotificationMediaManager mNotificationMediaManager;
    private final LocalBluetoothManager mLocalBluetoothManager;
    private final Executor mBackgroundExecutor;
    private LocalMediaManager mLocalMediaManager;
    private MediaDevice mDevice;
@@ -157,7 +160,8 @@ public class QSPanel extends LinearLayout implements Tunable, Callback, Brightne
            BroadcastDispatcher broadcastDispatcher,
            QSLogger qsLogger,
            NotificationMediaManager notificationMediaManager,
            @Background Executor backgroundExecutor
            @Background Executor backgroundExecutor,
            @Nullable LocalBluetoothManager localBluetoothManager
    ) {
        super(context, attrs);
        mContext = context;
@@ -165,6 +169,7 @@ public class QSPanel extends LinearLayout implements Tunable, Callback, Brightne
        mDumpManager = dumpManager;
        mNotificationMediaManager = notificationMediaManager;
        mBackgroundExecutor = backgroundExecutor;
        mLocalBluetoothManager = localBluetoothManager;

        setOrientation(VERTICAL);

@@ -286,7 +291,9 @@ public class QSPanel extends LinearLayout implements Tunable, Callback, Brightne

            // Set up listener for device changes
            // TODO: integrate with MediaTransferManager?
            mLocalMediaManager = new LocalMediaManager(mContext, null, null);
            InfoMediaManager imm =
                    new InfoMediaManager(mContext, null, null, mLocalBluetoothManager);
            mLocalMediaManager = new LocalMediaManager(mContext, mLocalBluetoothManager, imm, null);
            mLocalMediaManager.startScan();
            mDevice = mLocalMediaManager.getCurrentConnectedDevice();
            mLocalMediaManager.registerCallback(mDeviceCallback);
+5 −4
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.systemui.qs;

import static com.android.systemui.util.InjectionInflationController.VIEW_CONTEXT;

import android.annotation.Nullable;
import android.content.Context;
import android.content.res.Configuration;
import android.graphics.Rect;
@@ -26,6 +27,7 @@ import android.view.Gravity;
import android.view.View;
import android.widget.LinearLayout;

import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.broadcast.BroadcastDispatcher;
@@ -77,10 +79,11 @@ public class QuickQSPanel extends QSPanel {
            BroadcastDispatcher broadcastDispatcher,
            QSLogger qsLogger,
            NotificationMediaManager notificationMediaManager,
            @Background Executor backgroundExecutor
            @Background Executor backgroundExecutor,
            @Nullable LocalBluetoothManager localBluetoothManager
    ) {
        super(context, attrs, dumpManager, broadcastDispatcher, qsLogger, notificationMediaManager,
                backgroundExecutor);
                backgroundExecutor, localBluetoothManager);
        if (mFooter != null) {
            removeView(mFooter.getView());
        }
@@ -155,8 +158,6 @@ public class QuickQSPanel extends QSPanel {
        Dependency.get(TunerService.class).removeTunable(mNumTiles);
    }



    @Override
    protected String getDumpableTag() {
        return TAG;
+5 −1
Original line number Diff line number Diff line
@@ -32,6 +32,8 @@ import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;

import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.media.InfoMediaManager;
import com.android.settingslib.media.LocalMediaManager;
import com.android.settingslib.media.MediaDevice;
import com.android.settingslib.media.MediaOutputSliceConstants;
@@ -106,7 +108,9 @@ public class MediaTransferManager {
    public MediaTransferManager(Context context) {
        mContext = context;
        mActivityStarter = Dependency.get(ActivityStarter.class);
        mLocalMediaManager = new LocalMediaManager(mContext, null, null);
        LocalBluetoothManager lbm = Dependency.get(LocalBluetoothManager.class);
        InfoMediaManager imm = new InfoMediaManager(mContext, null, null, lbm);
        mLocalMediaManager = new LocalMediaManager(mContext, lbm, imm, null);
    }

    /**
+5 −1
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ import androidx.test.filters.SmallTest;

import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.systemui.SysuiTestCase;
import com.android.systemui.broadcast.BroadcastDispatcher;
import com.android.systemui.dump.DumpManager;
@@ -85,6 +86,8 @@ public class QSPanelTest extends SysuiTestCase {
    private NotificationMediaManager mNotificationMediaManager;
    @Mock
    private Executor mBackgroundExecutor;
    @Mock
    private LocalBluetoothManager mLocalBluetoothManager;

    @Before
    public void setup() throws Exception {
@@ -94,7 +97,8 @@ public class QSPanelTest extends SysuiTestCase {
        mTestableLooper.runWithLooper(() -> {
            mMetricsLogger = mDependency.injectMockDependency(MetricsLogger.class);
            mQsPanel = new QSPanel(mContext, null, mDumpManager, mBroadcastDispatcher,
                    mQSLogger, mNotificationMediaManager, mBackgroundExecutor);
                    mQSLogger, mNotificationMediaManager, mBackgroundExecutor,
                    mLocalBluetoothManager);
            // Provides a parent with non-zero size for QSPanel
            mParentView = new FrameLayout(mContext);
            mParentView.addView(mQsPanel);