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

Commit 5fa73d14 authored by SongFerng Wang's avatar SongFerng Wang Committed by Android (Google) Code Review
Browse files

Merge "[Sim UI enhancement] remove the "Tap to show info"" into main

parents 35b3ad93 c6eba747
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -52,11 +52,12 @@
            settings:controller="com.android.settings.deviceinfo.BrandedAccountPreferenceController"/>

        <!-- Phone number -->
        <com.android.settings.deviceinfo.PhoneNumberSummaryPreference
        <Preference
            android:key="phone_number"
            android:order="3"
            android:title="@string/status_number"
            android:summary="@string/summary_placeholder"
            android:selectable="false"
            settings:isPreferenceVisible="@bool/config_show_sim_info"
            settings:controller="com.android.settings.deviceinfo.PhoneNumberPreferenceController"
            settings:enableCopying="true"/>
@@ -118,7 +119,6 @@
            android:key="eid_info"
            android:order="31"
            android:title="@string/status_eid"
            android:summary="@string/device_info_protected_single_press"
            android:positiveButtonText="@string/dlg_ok"
            android:dialogLayout="@layout/dialog_eid_status"
            settings:isPreferenceVisible="@bool/config_show_sim_info"
@@ -126,7 +126,7 @@
            settings:controller="com.android.settings.deviceinfo.simstatus.SimEidPreferenceController"/>

        <!-- IMEI -->
        <com.android.settings.deviceinfo.PhoneNumberSummaryPreference
        <Preference
            android:key="imei_info"
            android:order="32"
            android:title="@string/status_imei"
+3 −25
Original line number Diff line number Diff line
@@ -55,28 +55,6 @@ public class PhoneNumberPreferenceController extends BasePreferenceController {
                AVAILABLE : UNSUPPORTED_ON_DEVICE;
    }

    @Override
    public CharSequence getSummary() {
        return mContext.getString(R.string.device_info_protected_single_press);
    }

    @Override
    public boolean handlePreferenceTreeClick(Preference preference) {
        String prefKey = preference.getKey();
        if (prefKey.startsWith(KEY_PHONE_NUMBER)) {
            int simSlotNumber = 0;
            if (!TextUtils.equals(prefKey, KEY_PHONE_NUMBER)) {
                // Get multisim slot number from preference key.
                // Multisim preference key is KEY_PHONE_NUMBER + simSlotNumber
                simSlotNumber = Integer.parseInt(
                        prefKey.replaceAll("[^0-9]", ""));
            }
            final Preference simStatusPreference = mPreferenceList.get(simSlotNumber);
            simStatusPreference.setSummary(getPhoneNumber(simSlotNumber));
        }
        return super.handlePreferenceTreeClick(preference);
    }

    @Override
    public void displayPreference(PreferenceScreen screen) {
        super.displayPreference(screen);
@@ -105,7 +83,7 @@ public class PhoneNumberPreferenceController extends BasePreferenceController {
        for (int simSlotNumber = 0; simSlotNumber < mPreferenceList.size(); simSlotNumber++) {
            final Preference simStatusPreference = mPreferenceList.get(simSlotNumber);
            simStatusPreference.setTitle(getPreferenceTitle(simSlotNumber));
            simStatusPreference.setSummary(getSummary());
            simStatusPreference.setSummary(getPhoneNumber(simSlotNumber));
        }
    }

@@ -155,7 +133,7 @@ public class PhoneNumberPreferenceController extends BasePreferenceController {
    }

    @VisibleForTesting
    protected CharSequence getFormattedPhoneNumber(SubscriptionInfo subscriptionInfo) {
    protected String getFormattedPhoneNumber(SubscriptionInfo subscriptionInfo) {
        final String phoneNumber = SubscriptionUtil.getBidiFormattedPhoneNumber(mContext,
                subscriptionInfo);
        return TextUtils.isEmpty(phoneNumber) ? mContext.getString(R.string.device_info_default)
@@ -164,6 +142,6 @@ public class PhoneNumberPreferenceController extends BasePreferenceController {

    @VisibleForTesting
    protected Preference createNewPreference(Context context) {
        return new PhoneNumberSummaryPreference(context);
        return new Preference(context);
    }
}
+7 −8
Original line number Diff line number Diff line
@@ -33,7 +33,6 @@ import androidx.preference.PreferenceScreen;

import com.android.settings.R;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.deviceinfo.PhoneNumberSummaryPreference;
import com.android.settings.deviceinfo.simstatus.SlotSimStatus;
import com.android.settings.network.SubscriptionUtil;
import com.android.settingslib.Utils;
@@ -103,6 +102,7 @@ public class ImeiInfoPreferenceController extends BasePreferenceController {
            multiImeiPreference.setKey(DEFAULT_KEY + (1 + simSlotNumber));
            multiImeiPreference.setEnabled(true);
            multiImeiPreference.setCopyingEnabled(true);

            category.addPreference(multiImeiPreference);
       }
    }
@@ -112,11 +112,6 @@ public class ImeiInfoPreferenceController extends BasePreferenceController {
        updatePreference(preference, keyToSlotIndex(preference.getKey()));
    }

    @Override
    public CharSequence getSummary() {
        return mContext.getString(R.string.device_info_protected_single_press);
    }

    private CharSequence getSummary(int simSlot) {
        final int phoneType = getPhoneType(simSlot);
        return phoneType == PHONE_TYPE_CDMA ? mTelephonyManager.getMeid(simSlot)
@@ -150,8 +145,12 @@ public class ImeiInfoPreferenceController extends BasePreferenceController {

    @VisibleForTesting
    protected void updatePreference(Preference preference, int simSlot) {
        if (simSlot < 0) {
            preference.setVisible(false);
            return;
        }
        preference.setTitle(getTitle(simSlot));
        preference.setSummary(getSummary());
        preference.setSummary(getSummary(simSlot));
    }

    private CharSequence getTitleForGsmPhone(int simSlot, boolean isPrimaryImei) {
@@ -195,6 +194,6 @@ public class ImeiInfoPreferenceController extends BasePreferenceController {

    @VisibleForTesting
    Preference createNewPreference(Context context) {
        return new PhoneNumberSummaryPreference(context);
        return new Preference(context);
    }
}
+1 −3
Original line number Diff line number Diff line
@@ -92,6 +92,7 @@ class SimEidPreferenceController(context: Context, preferenceKey: String) :
            }
            preference.title = title
            preference.dialogTitle = title
            preference.summary = eid
            updateDialog()
        }
    }
@@ -130,9 +131,6 @@ class SimEidPreferenceController(context: Context, preferenceKey: String) :

        val qrCodeView = dialog.requireViewById<ImageView>(R.id.esim_id_qrcode)
        qrCodeView.setImageBitmap(getEidQrCode(eid))

        // After "Tap to show", eid is displayed on preference.
        preference.summary = textView.text
    }

    override fun handlePreferenceTreeClick(preference: Preference): Boolean {
+8 −23
Original line number Diff line number Diff line
@@ -37,7 +37,6 @@ import androidx.preference.PreferenceScreen;
import androidx.test.core.app.ApplicationProvider;
import androidx.test.ext.junit.runners.AndroidJUnit4;

import com.android.settings.core.BasePreferenceController;
import com.android.settings.testutils.ResourcesUtils;

import org.junit.Before;
@@ -89,26 +88,9 @@ public class PhoneNumberPreferenceControllerTest {
        mCategory.setKey(categoryKey);
        mScreen.addPreference(mCategory);

        doReturn(mSubscriptionInfo).when(mController).getSubscriptionInfo(anyInt());
        doReturn(mSecondPreference).when(mController).createNewPreference(mContext);
    }

    @Test
    public void getAvailabilityStatus_isVoiceCapable_shouldBeAVAILABLE() {
        when(mTelephonyManager.isVoiceCapable()).thenReturn(true);

        assertThat(mController.getAvailabilityStatus()).isEqualTo(
                BasePreferenceController.AVAILABLE);
    }

    @Test
    public void getAvailabilityStatus_isNotVoiceCapable_shouldBeUNSUPPORTED_ON_DEVICE() {
        when(mTelephonyManager.isVoiceCapable()).thenReturn(false);

        assertThat(mController.getAvailabilityStatus()).isEqualTo(
                BasePreferenceController.UNSUPPORTED_ON_DEVICE);
    }

    @Test
    public void displayPreference_multiSim_shouldAddSecondPreference() {
        when(mTelephonyManager.getPhoneCount()).thenReturn(2);
@@ -123,6 +105,7 @@ public class PhoneNumberPreferenceControllerTest {
    @Test
    public void updateState_singleSim_shouldUpdateTitleAndPhoneNumber() {
        final String phoneNumber = "1111111111";
        doReturn(mSubscriptionInfo).when(mController).getSubscriptionInfo(anyInt());
        doReturn(phoneNumber).when(mController).getFormattedPhoneNumber(mSubscriptionInfo);
        when(mTelephonyManager.getPhoneCount()).thenReturn(1);
        mController.displayPreference(mScreen);
@@ -136,6 +119,7 @@ public class PhoneNumberPreferenceControllerTest {
    @Test
    public void updateState_multiSim_shouldUpdateTitleAndPhoneNumberOfMultiplePreferences() {
        final String phoneNumber = "1111111111";
        doReturn(mSubscriptionInfo).when(mController).getSubscriptionInfo(anyInt());
        doReturn(phoneNumber).when(mController).getFormattedPhoneNumber(mSubscriptionInfo);
        when(mTelephonyManager.getPhoneCount()).thenReturn(2);
        mController.displayPreference(mScreen);
@@ -153,11 +137,11 @@ public class PhoneNumberPreferenceControllerTest {
    @Test
    public void getSummary_cannotGetActiveSubscriptionInfo_shouldShowUnknown() {
        when(mSubscriptionManager.getActiveSubscriptionInfoList()).thenReturn(null);
        mController.displayPreference(mScreen);

        CharSequence primaryNumber = mController.getSummary();
        mController.updateState(mPreference);

        assertThat(primaryNumber).isNotNull();
        assertThat(primaryNumber).isEqualTo(ResourcesUtils.getResourcesString(
        verify(mPreference).setSummary(ResourcesUtils.getResourcesString(
                mContext, "device_info_default"));
    }

@@ -166,9 +150,10 @@ public class PhoneNumberPreferenceControllerTest {
        List<SubscriptionInfo> infos = new ArrayList<>();
        when(mSubscriptionManager.getActiveSubscriptionInfoList()).thenReturn(infos);

        CharSequence primaryNumber = mController.getSummary();
        mController.displayPreference(mScreen);
        mController.updateState(mPreference);

        assertThat(primaryNumber).isEqualTo(ResourcesUtils.getResourcesString(
        verify(mPreference).setSummary(ResourcesUtils.getResourcesString(
                mContext, "device_info_default"));
    }
}