Merge "[Settings] Unified the source of phone number"
This commit is contained in:
@@ -31,6 +31,8 @@ import android.telephony.SubscriptionManager;
|
||||
import android.telephony.TelephonyManager;
|
||||
import android.telephony.UiccCardInfo;
|
||||
import android.telephony.UiccSlotInfo;
|
||||
import android.text.BidiFormatter;
|
||||
import android.text.TextDirectionHeuristics;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
|
||||
@@ -42,7 +44,6 @@ import com.android.settings.network.helper.SelectableSubscriptions;
|
||||
import com.android.settings.network.helper.SubscriptionAnnotation;
|
||||
import com.android.settings.network.telephony.DeleteEuiccSubscriptionDialogActivity;
|
||||
import com.android.settings.network.telephony.ToggleSubscriptionDialogActivity;
|
||||
import com.android.settingslib.DeviceInfoUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
@@ -292,7 +293,7 @@ public class SubscriptionUtil {
|
||||
final Supplier<Stream<DisplayInfo>> uniqueInfos = () -> originalInfos.get().map(info -> {
|
||||
if (duplicateOriginalNames.contains(info.originalName)) {
|
||||
// This may return null, if the user cannot view the phone number itself.
|
||||
final String phoneNumber = DeviceInfoUtils.getBidiFormattedPhoneNumber(context,
|
||||
final String phoneNumber = getBidiFormattedPhoneNumber(context,
|
||||
info.subscriptionInfo);
|
||||
String lastFourDigits = "";
|
||||
if (phoneNumber != null) {
|
||||
@@ -563,6 +564,20 @@ public class SubscriptionUtil {
|
||||
return PhoneNumberUtils.formatNumber(rawPhoneNumber, countryIso);
|
||||
}
|
||||
|
||||
/**
|
||||
* To get the formatting text for display in a potentially opposite-directionality context
|
||||
* without garbling.
|
||||
* @param subscriptionInfo {@link SubscriptionInfo} subscription information.
|
||||
* @return Returns phone number with Bidi format.
|
||||
*/
|
||||
@Nullable
|
||||
public static String getBidiFormattedPhoneNumber(Context context,
|
||||
SubscriptionInfo subscriptionInfo) {
|
||||
String phoneNumber = getFormattedPhoneNumber(context, subscriptionInfo);
|
||||
return (phoneNumber == null) ? phoneNumber :
|
||||
BidiFormatter.getInstance().unicodeWrap(phoneNumber, TextDirectionHeuristics.LTR);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the subscription on a removable sim card. The device does not need to be on removable
|
||||
* slot.
|
||||
|
||||
@@ -47,7 +47,6 @@ import androidx.appcompat.app.AlertDialog;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
||||
import com.android.settings.network.SubscriptionUtil;
|
||||
import com.android.settingslib.DeviceInfoUtils;
|
||||
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
|
||||
@@ -184,7 +183,7 @@ public class RenameMobileNetworkDialogFragment extends InstrumentedDialogFragmen
|
||||
phoneTitle.setVisibility(info.isOpportunistic() ? View.GONE : View.VISIBLE);
|
||||
|
||||
final TextView phoneNumber = view.findViewById(R.id.number_value);
|
||||
final String pn = DeviceInfoUtils.getBidiFormattedPhoneNumber(getContext(), info);
|
||||
final String pn = SubscriptionUtil.getBidiFormattedPhoneNumber(getContext(), info);
|
||||
if (!TextUtils.isEmpty(pn)) {
|
||||
phoneNumber.setText(pn);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user