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

Commit 79923fb3 authored by Christian Morlok's avatar Christian Morlok
Browse files

Keyguard: set separator for multi-sim CarrierText

Restore the pre-M behavior, set the separator to " | ".

Change-Id: I91a3ccfc9013269d2e14e6835e322f84b05c3eb4
parent b5c716fe
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -240,4 +240,10 @@
    <string name="tethered_notification_no_device_message">No connected device</string>
    <string name="tethered_notification_one_device_message"><xliff:g id="count">%1$s</xliff:g> connected device</string>
    <string name="tethered_notification_multi_device_message"><xliff:g id="count">%1$s</xliff:g> connected devices</string>

    <!-- Keyguard strings -->
    <!-- Sequence of characters used to separate carrier message strings in keyguard. Typically just vertical line
         with spaces on either side. [CHAR LIMIT=3] -->
    <string name="kg_sub_separator" translatable="false">" | "</string>

</resources>
+4 −0
Original line number Diff line number Diff line
@@ -145,4 +145,8 @@

    <!-- Carrier Apps -->
    <java-symbol type="array" name="config_enabledPreinstalledCarrierApps" />

    <!-- KeyGuard -->
    <java-symbol type="string" name="kg_sub_separator" />

</resources>
+10 −2
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ public class CarrierText extends TextView {
    private static final String TAG = "CarrierText";

    private static CharSequence mSeparator;
    private static CharSequence mSubSeparator;

    private final boolean mIsEmergencyCallCapable;

@@ -168,7 +169,7 @@ public class CarrierText extends TextView {
            }
            if (carrierTextForSimState != null) {
                allSimsMissing = false;
                displayText = concatenate(displayText, carrierTextForSimState);
                displayText = concatenate(displayText, carrierTextForSimState, mSubSeparator);
            }
            if (simState == IccCardConstants.State.READY) {
                ServiceState ss = mKeyguardUpdateMonitor.mServiceStates.get(subId);
@@ -242,6 +243,8 @@ public class CarrierText extends TextView {
        super.onFinishInflate();
        mSeparator = getResources().getString(
                com.android.internal.R.string.kg_text_message_separator);
        mSubSeparator = getResources().getString(
                com.android.internal.R.string.kg_sub_separator);
        boolean shouldMarquee = KeyguardUpdateMonitor.getInstance(mContext).isDeviceInteractive();
        setSelected(shouldMarquee); // Allow marquee to work.
    }
@@ -381,10 +384,15 @@ public class CarrierText extends TextView {
    }

    private static CharSequence concatenate(CharSequence plmn, CharSequence spn) {
        return concatenate(plmn, spn, mSeparator);
    }

    private static CharSequence concatenate(CharSequence plmn, CharSequence spn,
            CharSequence separator) {
        final boolean plmnValid = !TextUtils.isEmpty(plmn);
        final boolean spnValid = !TextUtils.isEmpty(spn);
        if (plmnValid && spnValid) {
            return new StringBuilder().append(plmn).append(mSeparator).append(spn).toString();
            return new StringBuilder().append(plmn).append(separator).append(spn).toString();
        } else if (plmnValid) {
            return plmn;
        } else if (spnValid) {