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

Commit 765fb829 authored by Jackal Guo's avatar Jackal Guo
Browse files

Revert "[Settings] Refactor PhoneStateListener"

This reverts commit e01df590.

Reason for revert: b/163995409 | Build failure.

Change-Id: Ia413a4bae93055ceca5b6aa85602c84a8fbe5424
parent e01df590
Loading
Loading
Loading
Loading
+10 −11
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.settings.network.telephony;

import android.content.Context;
import android.os.Looper;
import android.os.PersistableBundle;
import android.telephony.CarrierConfigManager;
import android.telephony.PhoneStateListener;
@@ -43,6 +44,7 @@ public class VideoCallingPreferenceController extends TelephonyTogglePreferenceC
        Enhanced4gLtePreferenceController.On4gLteUpdateListener {

    private Preference mPreference;
    private TelephonyManager mTelephonyManager;
    private CarrierConfigManager mCarrierConfigManager;
    @VisibleForTesting
    ImsManager mImsManager;
@@ -55,7 +57,7 @@ public class VideoCallingPreferenceController extends TelephonyTogglePreferenceC
        super(context, key);
        mCarrierConfigManager = context.getSystemService(CarrierConfigManager.class);
        mDataContentObserver = new MobileDataEnabledListener(context, this);
        mPhoneStateListener = new PhoneCallStateListener();
        mPhoneStateListener = new PhoneCallStateListener(Looper.getMainLooper());
    }

    @Override
@@ -74,7 +76,7 @@ public class VideoCallingPreferenceController extends TelephonyTogglePreferenceC

    @Override
    public void onStart() {
        mPhoneStateListener.register(mContext, mSubId);
        mPhoneStateListener.register(mSubId);
        mDataContentObserver.start(mSubId);
    }

@@ -115,7 +117,9 @@ public class VideoCallingPreferenceController extends TelephonyTogglePreferenceC

    public VideoCallingPreferenceController init(int subId) {
        mSubId = subId;
        mTelephonyManager = mContext.getSystemService(TelephonyManager.class);
        if (mSubId != SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
            mTelephonyManager = mTelephonyManager.createForSubscriptionId(mSubId);
            mImsManager = ImsManager.getInstance(mContext, SubscriptionManager.getPhoneId(mSubId));
        }

@@ -152,23 +156,18 @@ public class VideoCallingPreferenceController extends TelephonyTogglePreferenceC

    private class PhoneCallStateListener extends PhoneStateListener {

        PhoneCallStateListener() {
            super();
        public PhoneCallStateListener(Looper looper) {
            super(looper);
        }

        private TelephonyManager mTelephonyManager;

        @Override
        public void onCallStateChanged(int state, String incomingNumber) {
            mCallState = state;
            updateState(mPreference);
        }

        public void register(Context context, int subId) {
            mTelephonyManager = context.getSystemService(TelephonyManager.class);
            if (subId != SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
                mTelephonyManager = mTelephonyManager.createForSubscriptionId(subId);
            }
        public void register(int subId) {
            mSubId = subId;
            mTelephonyManager.listen(this, PhoneStateListener.LISTEN_CALL_STATE);
        }

+1 −1
Original line number Diff line number Diff line
@@ -67,7 +67,7 @@ public class Enhanced4gLtePreferenceControllerTest {
        MockitoAnnotations.initMocks(this);

        mContext = spy(RuntimeEnvironment.application);
        doReturn(mTelephonyManager).when(mContext).getSystemService(TelephonyManager.class);
        doReturn(mTelephonyManager).when(mContext).getSystemService(Context.TELEPHONY_SERVICE);
        doReturn(mSubscriptionManager).when(mContext).getSystemService(SubscriptionManager.class);
        doReturn(mCarrierConfigManager).when(mContext).getSystemService(CarrierConfigManager.class);
        doReturn(mTelephonyManager).when(mTelephonyManager).createForSubscriptionId(SUB_ID);
+5 −1
Original line number Diff line number Diff line
@@ -76,6 +76,10 @@ public class WifiCallingPreferenceControllerTest {

        mContext = spy(RuntimeEnvironment.application);

        mQueryImsState = new MockWifiCallingQueryImsState(mContext, SUB_ID);
        mQueryImsState.setIsEnabledByUser(true);
        mQueryImsState.setIsProvisionedOnDevice(true);

        mPreference = new Preference(mContext);
        mController = spy(new WifiCallingPreferenceController(mContext, "wifi_calling") {
            @Override
@@ -85,8 +89,8 @@ public class WifiCallingPreferenceControllerTest {
        });
        mController.mCarrierConfigManager = mCarrierConfigManager;
        mController.init(SUB_ID);
        mController.mImsManager = mImsManager;
        mController.mCallState = TelephonyManager.CALL_STATE_IDLE;
        doReturn(mQueryImsState).when(mController).queryImsState(anyInt());
        mPreference.setKey(mController.getPreferenceKey());

        when(mController.getTelephonyManager(mContext, SUB_ID)).thenReturn(mTelephonyManager);