diff options
author | Ladios Jonquil <ladios.jonquil@gmail.com> | 2011-11-13 21:39:06 +0800 |
---|---|---|
committer | Ladios Jonquil <ladios.jonquil@gmail.com> | 2011-11-14 04:42:42 +0800 |
commit | 9063850a285bc811023976ace37b9e73c3c96d75 (patch) | |
tree | 5de25971d4ab97a60d80bf92c8c94c11b7e5d4e6 /packages | |
parent | 47c83a2ed755137b2c8ef3057f50aee43bea876f (diff) | |
download | frameworks_base-9063850a285bc811023976ace37b9e73c3c96d75.zip frameworks_base-9063850a285bc811023976ace37b9e73c3c96d75.tar.gz frameworks_base-9063850a285bc811023976ace37b9e73c3c96d75.tar.bz2 |
gsm/statusbar: Correct CarrierLabel display logic
What's wrong:
* "(No service)|SPN" is shown on lockscreen/statusbar.
* The "(No service)" string won't update on locale change.
What's changed:
statusbar:
* As per lockscreen, the "(No service)" string should be shown only when
showPlmn is true, and plmn is null.
gsm:
* Run updateSpnDisplay() when ServiceState has not changed (equals() is
true), but has deregistered (getState() values are different).
* When plmn is null (no service):
- Set the display rule to show plmn only.
- Allow updateSpnDisplay() to send the intent on locale change.
Change-Id: Ieab5c93a560c7fbe6a69e2db151d840a30fdbeb4
Diffstat (limited to 'packages')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/CarrierLabel.java | 31 |
1 files changed, 10 insertions, 21 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/CarrierLabel.java b/packages/SystemUI/src/com/android/systemui/statusbar/CarrierLabel.java index 31b78b6..1b8723f 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/CarrierLabel.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/CarrierLabel.java @@ -23,18 +23,13 @@ import android.content.IntentFilter; import android.provider.Telephony; import android.util.AttributeSet; import android.util.Slog; -import android.view.View; import android.widget.TextView; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.TimeZone; - import com.android.internal.R; /** - * This widget display an analogic clock with two hands for hours and - * minutes. + * This widget display the current network status or registered PLMN, and/or + * SPN if available. */ public class CarrierLabel extends TextView { private boolean mAttached; @@ -92,26 +87,20 @@ public class CarrierLabel extends TextView { + " showPlmn=" + showPlmn + " plmn=" + plmn); } StringBuilder str = new StringBuilder(); - boolean something = false; - if (showPlmn && plmn != null) { - str.append(plmn); - something = true; + if (showPlmn) { + if (plmn != null) { + str.append(plmn); + } else { + str.append(mContext.getText(R.string.lockscreen_carrier_default)); + } } if (showSpn && spn != null) { - if (something) { + if (showPlmn) { str.append('\n'); } str.append(spn); - something = true; - } - if (something) { - setText(str.toString()); - } else { - setText(com.android.internal.R.string.lockscreen_carrier_default); } + setText(str.toString()); } - } - - |