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

Commit 75bdb0ef authored by Hyundo Moon's avatar Hyundo Moon Committed by Automerger Merge Worker
Browse files

Merge "Send features first and then routes when registering MR2Manager" into sc-dev am: 9c168a56

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15165351

Change-Id: If0772ad426b6901c25bb1eb2ed3443fac45e0f9c
parents 659c116c 9c168a56
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -903,9 +903,9 @@ class MediaRouter2ServiceImpl {
        userRecord.mManagerRecords.add(managerRecord);
        mAllManagerRecords.put(binder, managerRecord);

        userRecord.mHandler.sendMessage(obtainMessage(UserHandler::notifyRoutesToManager,
                userRecord.mHandler, manager));

        // Note: Features should be sent first before the routes. If not, the
        // RouteCallback#onRoutesAdded() for system MR2 will never be called with initial routes
        // due to the lack of features.
        for (RouterRecord routerRecord : userRecord.mRouterRecords) {
            // TODO: UserRecord <-> routerRecord, why do they reference each other?
            // How about removing mUserRecord from routerRecord?
@@ -913,6 +913,9 @@ class MediaRouter2ServiceImpl {
                    obtainMessage(UserHandler::notifyPreferredFeaturesChangedToManager,
                        routerRecord.mUserRecord.mHandler, routerRecord, manager));
        }

        userRecord.mHandler.sendMessage(obtainMessage(UserHandler::notifyRoutesToManager,
                userRecord.mHandler, manager));
    }

    private void unregisterManagerLocked(@NonNull IMediaRouter2Manager manager, boolean died) {