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

Commit eae1767e authored by Emma James's avatar Emma James Committed by Automerger Merge Worker
Browse files

Change the call manager listeners to an array to enforce order where classes...

Change the call manager listeners to an array to enforce order where classes rely on the values from others. am: cba16c6f

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/services/Telecomm/+/18492010



Change-Id: I5eaa74786553f5ed1dcc2c2e44b420d279f5739d
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents e20b2f64 cba16c6f
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -468,10 +468,11 @@ public class CallAudioManager extends CallsManagerListenerBase {
    @VisibleForTesting
    public boolean startRinging() {
        synchronized (mCallsManager.getLock()) {
            boolean result = mRinger.startRinging(mForegroundCall,
            Call localForegroundCall = mForegroundCall;
            boolean result = mRinger.startRinging(localForegroundCall,
                    mCallAudioRouteStateMachine.isHfpDeviceAvailable());
            if (result) {
                mForegroundCall.setStartRingTime();
                localForegroundCall.setStartRingTime();
            }
            return result;
        }
+6 −5
Original line number Diff line number Diff line
@@ -140,6 +140,7 @@ import java.util.Optional;
import java.util.Set;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
@@ -343,10 +344,8 @@ public class CallsManager extends Call.ListenerBase
    private RespondViaSmsManager mRespondViaSmsManager;
    private final Ringer mRinger;
    private final InCallWakeLockController mInCallWakeLockController;
    // For this set initial table size to 16 because we add 13 listeners in
    // the CallsManager constructor.
    private final Set<CallsManagerListener> mListeners = Collections.newSetFromMap(
            new ConcurrentHashMap<CallsManagerListener, Boolean>(16, 0.9f, 1));
    private final CopyOnWriteArrayList<CallsManagerListener> mListeners =
            new CopyOnWriteArrayList<>();
    private final HeadsetMediaButton mHeadsetMediaButton;
    private final WiredHeadsetManager mWiredHeadsetManager;
    private final SystemStateHelper mSystemStateHelper;
@@ -579,7 +578,6 @@ public class CallsManager extends Call.ListenerBase
        mListeners.add(mInCallWakeLockController);
        mListeners.add(statusBarNotifier);
        mListeners.add(mCallLogManager);
        mListeners.add(mPhoneStateBroadcaster);
        mListeners.add(mInCallController);
        mListeners.add(mCallDiagnosticServiceController);
        mListeners.add(mCallAudioManager);
@@ -590,6 +588,9 @@ public class CallsManager extends Call.ListenerBase
        mListeners.add(mProximitySensorManager);
        mListeners.add(audioProcessingNotification);

        // this needs to be after the mCallAudioManager
        mListeners.add(mPhoneStateBroadcaster);

        // There is no USER_SWITCHED broadcast for user 0, handle it here explicitly.
        final UserManager userManager = UserManager.get(mContext);
        // Don't load missed call if it is run in split user model.