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

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

Merge "MediaRouter2ServiceImpl: Remove unnecessary notification to managers"...

Merge "MediaRouter2ServiceImpl: Remove unnecessary notification to managers" into rvc-dev am: 135779c8

Change-Id: I63bfa0364cc497c07131b9baaec6d48e20a6b1a7
parents 5becd20b 135779c8
Loading
Loading
Loading
Loading
+13 −5
Original line number Diff line number Diff line
@@ -808,14 +808,11 @@ class MediaRouter2ServiceImpl {
                userRecord.mHandler, manager));

        for (RouterRecord routerRecord : userRecord.mRouterRecords) {
            // TODO: Do not use notifyPreferredFeaturesChangedToManagers since it updates all
            // managers. Instead, Notify only to the manager that is currently being registered.

            // TODO: UserRecord <-> routerRecord, why do they reference each other?
            // How about removing mUserRecord from routerRecord?
            routerRecord.mUserRecord.mHandler.sendMessage(
                    obtainMessage(UserHandler::notifyPreferredFeaturesChangedToManagers,
                        routerRecord.mUserRecord.mHandler, routerRecord));
                    obtainMessage(UserHandler::notifyPreferredFeaturesChangedToManager,
                        routerRecord.mUserRecord.mHandler, routerRecord, manager));
        }
    }

@@ -1928,6 +1925,17 @@ class MediaRouter2ServiceImpl {
            }
        }

        private void notifyPreferredFeaturesChangedToManager(@NonNull RouterRecord routerRecord,
                @NonNull IMediaRouter2Manager manager) {
            try {
                manager.notifyPreferredFeaturesChanged(routerRecord.mPackageName,
                        routerRecord.mDiscoveryPreference.getPreferredFeatures());
            } catch (RemoteException ex) {
                Slog.w(TAG, "Failed to notify preferred features changed."
                        + " Manager probably died.", ex);
            }
        }

        private void notifyPreferredFeaturesChangedToManagers(@NonNull RouterRecord routerRecord) {
            MediaRouter2ServiceImpl service = mServiceRef.get();
            if (service == null) {