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

Commit 500f7931 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "MediaRouter: don't scanPackages if unnecessary" into rvc-dev am: ce4cd092

Change-Id: Id3c8a54f1738361320e3eaecb7ee39725f7e5b3d
parents a8452260 ce4cd092
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -169,6 +169,8 @@ final class MediaRoute2ProviderServiceProxy extends MediaRoute2Provider
    }

    public void rebindIfDisconnected() {
        //TODO: When we are connecting to the service, calling this will unbind and bind again.
        // We'd better not unbind if we are connecting.
        if (mActiveConnection == null && shouldBind()) {
            unbind();
            bind();
+9 −10
Original line number Diff line number Diff line
@@ -83,7 +83,7 @@ final class MediaRoute2ProviderWatcher {

            // Scan packages.
            // Also has the side-effect of restarting providers if needed.
            mHandler.post(mScanPackagesRunnable);
            postScanPackagesIfNeeded();
        }
    }

@@ -92,7 +92,7 @@ final class MediaRoute2ProviderWatcher {
            mRunning = false;

            mContext.unregisterReceiver(mScanPackagesReceiver);
            mHandler.removeCallbacks(mScanPackagesRunnable);
            mHandler.removeCallbacks(this::scanPackages);

            // Stop all providers.
            for (int i = mProxies.size() - 1; i >= 0; i--) {
@@ -154,20 +154,19 @@ final class MediaRoute2ProviderWatcher {
        return -1;
    }

    private void postScanPackagesIfNeeded() {
        if (!mHandler.hasCallbacks(this::scanPackages)) {
            mHandler.post(this::scanPackages);
        }
    }

    private final BroadcastReceiver mScanPackagesReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            if (DEBUG) {
                Slog.d(TAG, "Received package manager broadcast: " + intent);
            }
            scanPackages();
        }
    };

    private final Runnable mScanPackagesRunnable = new Runnable() {
        @Override
        public void run() {
            scanPackages();
            postScanPackagesIfNeeded();
        }
    };