diff --git a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_battery_mini.png b/packages/SystemUI/res/drawable-mdpi/ic_sysbar_battery_mini.png
deleted file mode 100644
index 9ababb741ee01..0000000000000
Binary files a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_battery_mini.png and /dev/null differ
diff --git a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_wifi_mini.png b/packages/SystemUI/res/drawable-mdpi/ic_sysbar_wifi_mini.png
deleted file mode 100644
index ffbd2d3fe7dbb..0000000000000
Binary files a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_wifi_mini.png and /dev/null differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_0.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_0.png
index e81cd7c53237e..9216030a84544 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_0.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_0.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_0_fully.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_0_fully.png
index e81cd7c53237e..9216030a84544 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_0_fully.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_0_fully.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_1.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_1.png
index c56ae8a898787..e529f6f98303c 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_1.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_1.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_1_fully.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_1_fully.png
index bf720cbb6a13f..e529f6f98303c 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_1_fully.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_1_fully.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_1x.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_1x.png
new file mode 100644
index 0000000000000..02c27ee445824
Binary files /dev/null and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_1x.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_2.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_2.png
index 38e3b244f2e6f..57558ad14382c 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_2.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_2.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_2_fully.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_2_fully.png
index 3559497067890..57558ad14382c 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_2_fully.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_2_fully.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_3.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_3.png
index 6f98e72819408..e4425b2b1eac5 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_3.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_3.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_3_fully.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_3_fully.png
index 8b932a667ae85..e4425b2b1eac5 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_3_fully.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_3_fully.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_3g.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_3g.png
new file mode 100644
index 0000000000000..84ac92760d18c
Binary files /dev/null and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_3g.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_4.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_4.png
index 759631c6047b3..09de6b093a811 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_4.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_4.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_4_fully.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_4_fully.png
index 45c45092f3d33..09de6b093a811 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_4_fully.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_4_fully.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_edge.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_edge.png
new file mode 100644
index 0000000000000..13cae40b84fad
Binary files /dev/null and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_edge.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_flightmode.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_flightmode.png
index da5b02c345d1c..690b5f6c72219 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_flightmode.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_flightmode.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_gprs.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_gprs.png
new file mode 100644
index 0000000000000..d0a4fd01a788b
Binary files /dev/null and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_gprs.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_hsdpa.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_hsdpa.png
new file mode 100644
index 0000000000000..05976bd06c793
Binary files /dev/null and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_hsdpa.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_roam.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_roam.png
new file mode 100644
index 0000000000000..2cc3cd642c06c
Binary files /dev/null and b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_roam.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_0.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_0.png
index 2989939be2b31..1c59b2add7aba 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_0.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_0.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_0_fully.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_0_fully.png
new file mode 100644
index 0000000000000..1c59b2add7aba
Binary files /dev/null and b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_0_fully.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_1.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_1.png
index 6f40cb44713ed..32e916587dc18 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_1.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_1.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_1_fully.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_1_fully.png
index 60e3794a40325..32e916587dc18 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_1_fully.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_1_fully.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_2.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_2.png
index ab1b0c673ad24..ea71298a2c27d 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_2.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_2.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_2_fully.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_2_fully.png
index eb259196f6e91..ea71298a2c27d 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_2_fully.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_2_fully.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_3.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_3.png
index b574115f99cfc..869a497dae717 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_3.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_3.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_3_fully.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_3_fully.png
index 14cd8facf33c1..869a497dae717 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_3_fully.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_3_fully.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_4.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_4.png
index 3b81cebcd5782..1711c8252fa9d 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_4.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_4.png differ
diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_4_fully.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_4_fully.png
index ef7298035d97a..1711c8252fa9d 100644
Binary files a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_4_fully.png and b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_signal_4_fully.png differ
diff --git a/packages/SystemUI/res/layout-xlarge/status_bar.xml b/packages/SystemUI/res/layout-xlarge/status_bar.xml
index 4fa306ea80609..488dbbaa524c5 100644
--- a/packages/SystemUI/res/layout-xlarge/status_bar.xml
+++ b/packages/SystemUI/res/layout-xlarge/status_bar.xml
@@ -80,21 +80,24 @@
android:layout_width="48dip"
android:layout_height="match_parent"
android:orientation="horizontal"
+ android:gravity="center"
>
-
+
diff --git a/packages/SystemUI/res/layout-xlarge/sysbar_panel_notifications.xml b/packages/SystemUI/res/layout-xlarge/sysbar_panel_notifications.xml
index f9e2d5e78ed1b..5fa8b3bbf8f68 100644
--- a/packages/SystemUI/res/layout-xlarge/sysbar_panel_notifications.xml
+++ b/packages/SystemUI/res/layout-xlarge/sysbar_panel_notifications.xml
@@ -78,7 +78,6 @@
android:layout_below="@id/date"
android:layout_marginTop="16dp"
android:layout_marginLeft="48dp"
- android:src="@drawable/ic_sysbar_battery_mini"
android:baseline="17dp"
/>
@@ -98,7 +97,6 @@
android:layout_width="wrap_content"
android:layout_toRightOf="@id/battery_text"
android:layout_alignBaseline="@id/battery"
- android:src="@drawable/ic_sysbar_wifi_mini"
android:baseline="21dp"
/>
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java
index cd2679a2f780b..18003dd42f9d8 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java
@@ -37,6 +37,7 @@ import android.telephony.ServiceState;
import android.telephony.SignalStrength;
import android.telephony.TelephonyManager;
import android.util.Slog;
+import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
@@ -57,8 +58,6 @@ public class NetworkController extends BroadcastReceiver {
boolean mHspaDataDistinguishable;
final TelephonyManager mPhone;
boolean mDataConnected;
- int mPhoneSignalIconId;
- int mDataIconId;
IccCard.State mSimState = IccCard.State.READY;
int mPhoneState = TelephonyManager.CALL_STATE_IDLE;
int mDataState = TelephonyManager.DATA_DISCONNECTED;
@@ -66,6 +65,10 @@ public class NetworkController extends BroadcastReceiver {
ServiceState mServiceState;
SignalStrength mSignalStrength;
int[] mDataIconList = TelephonyIcons.DATA_G[0];
+ int mPhoneSignalIconId;
+ int mDataDirectionIconId;
+ int mDataSignalIconId;
+ int mDataTypeIconId;
// wifi
final WifiManager mWifiManager;
@@ -81,11 +84,17 @@ public class NetworkController extends BroadcastReceiver {
// our ui
Context mContext;
- ArrayList mPhoneIconViews = new ArrayList();
- ArrayList mDataIconViews = new ArrayList();
+ ArrayList mPhoneSignalIconViews = new ArrayList();
+ ArrayList mDataDirectionIconViews = new ArrayList();
+ ArrayList mWifiIconViews = new ArrayList();
+ ArrayList mCombinedSignalIconViews = new ArrayList();
+ ArrayList mDataTypeIconViews = new ArrayList();
ArrayList mLabelViews = new ArrayList();
int mLastPhoneSignalIconId = -1;
- int mLastCombinedDataIconId = -1;
+ int mLastDataDirectionIconId = -1;
+ int mLastWifiIconId = -1;
+ int mLastCombinedSignalIconId = -1;
+ int mLastDataTypeIconId = -1;
String mLastLabel = "";
// yuck -- stop doing this here and put it in the framework
@@ -124,12 +133,24 @@ public class NetworkController extends BroadcastReceiver {
mBatteryStats = BatteryStatsService.getService();
}
- public void addPhoneIconView(ImageView v) {
- mPhoneIconViews.add(v);
+ public void addPhoneSignalIconView(ImageView v) {
+ mPhoneSignalIconViews.add(v);
}
- public void addCombinedDataIconView(ImageView v) {
- mDataIconViews.add(v);
+ public void addDataDirectionIconView(ImageView v) {
+ mDataDirectionIconViews.add(v);
+ }
+
+ public void addWifiIconView(ImageView v) {
+ mWifiIconViews.add(v);
+ }
+
+ public void addCombinedSignalIconView(ImageView v) {
+ mCombinedSignalIconViews.add(v);
+ }
+
+ public void addDataTypeIconView(ImageView v) {
+ mDataTypeIconViews.add(v);
}
public void addLabelView(TextView v) {
@@ -315,12 +336,15 @@ public class NetworkController extends BroadcastReceiver {
if (Settings.System.getInt(mContext.getContentResolver(),
Settings.System.AIRPLANE_MODE_ON, 0) == 1) {
mPhoneSignalIconId = R.drawable.stat_sys_signal_flightmode;
+ mDataSignalIconId = R.drawable.stat_sys_signal_flightmode;
} else {
mPhoneSignalIconId = R.drawable.stat_sys_signal_null;
+ mDataSignalIconId = R.drawable.stat_sys_signal_0; // note we use 0 instead of null
}
} else {
if (mSignalStrength == null) {
mPhoneSignalIconId = R.drawable.stat_sys_signal_null;
+ mDataSignalIconId = R.drawable.stat_sys_signal_0; // note we use 0 instead of null
} else if (isCdma()) {
// If 3G(EV) and 1x network are available than 3G should be
// displayed, displayed RSSI should be from the EV side.
@@ -338,6 +362,7 @@ public class NetworkController extends BroadcastReceiver {
iconList = TelephonyIcons.TELEPHONY_SIGNAL_STRENGTH[mInetCondition];
}
mPhoneSignalIconId = iconList[iconLevel];
+ mDataSignalIconId = TelephonyIcons.DATA_SIGNAL_STRENGTH[mInetCondition][iconLevel];
} else {
int asu = mSignalStrength.getGsmSignalStrength();
@@ -360,6 +385,7 @@ public class NetworkController extends BroadcastReceiver {
iconList = TelephonyIcons.TELEPHONY_SIGNAL_STRENGTH[mInetCondition];
}
mPhoneSignalIconId = iconList[iconLevel];
+ mDataSignalIconId = TelephonyIcons.DATA_SIGNAL_STRENGTH[mInetCondition][iconLevel];
}
}
}
@@ -368,36 +394,47 @@ public class NetworkController extends BroadcastReceiver {
switch (net) {
case TelephonyManager.NETWORK_TYPE_EDGE:
mDataIconList = TelephonyIcons.DATA_E[mInetCondition];
+ mDataTypeIconId = R.drawable.stat_sys_signal_edge;
break;
case TelephonyManager.NETWORK_TYPE_UMTS:
mDataIconList = TelephonyIcons.DATA_3G[mInetCondition];
+ mDataTypeIconId = R.drawable.stat_sys_signal_3g;
break;
case TelephonyManager.NETWORK_TYPE_HSDPA:
case TelephonyManager.NETWORK_TYPE_HSUPA:
case TelephonyManager.NETWORK_TYPE_HSPA:
if (mHspaDataDistinguishable) {
mDataIconList = TelephonyIcons.DATA_H[mInetCondition];
+ mDataTypeIconId = R.drawable.stat_sys_signal_hsdpa;
} else {
mDataIconList = TelephonyIcons.DATA_3G[mInetCondition];
+ mDataTypeIconId = R.drawable.stat_sys_signal_3g;
}
break;
case TelephonyManager.NETWORK_TYPE_CDMA:
// display 1xRTT for IS95A/B
mDataIconList = TelephonyIcons.DATA_1X[mInetCondition];
+ mDataTypeIconId = R.drawable.stat_sys_signal_1x;
break;
case TelephonyManager.NETWORK_TYPE_1xRTT:
mDataIconList = TelephonyIcons.DATA_1X[mInetCondition];
+ mDataTypeIconId = R.drawable.stat_sys_signal_1x;
break;
case TelephonyManager.NETWORK_TYPE_EVDO_0: //fall through
case TelephonyManager.NETWORK_TYPE_EVDO_A:
case TelephonyManager.NETWORK_TYPE_EVDO_B:
mDataIconList = TelephonyIcons.DATA_3G[mInetCondition];
+ mDataTypeIconId = R.drawable.stat_sys_signal_3g;
break;
// TODO - add support for NETWORK_TYPE_LTE and NETWORK_TYPE_EHRPD
default:
mDataIconList = TelephonyIcons.DATA_G[mInetCondition];
+ mDataTypeIconId = R.drawable.stat_sys_signal_gprs;
break;
}
+ if ((isCdma() && isCdmaEri()) || mPhone.isNetworkRoaming()) {
+ mDataTypeIconId = R.drawable.stat_sys_signal_roam;
+ }
}
boolean isCdmaEri() {
@@ -434,7 +471,7 @@ public class NetworkController extends BroadcastReceiver {
iconId = mDataIconList[0];
break;
}
- mDataIconId = iconId;
+ mDataDirectionIconId = iconId;
} else {
iconId = 0;
visible = false;
@@ -475,7 +512,7 @@ public class NetworkController extends BroadcastReceiver {
Binder.restoreCallingIdentity(ident);
}
- mDataIconId = iconId;
+ mDataDirectionIconId = iconId;
mDataConnected = visible;
}
@@ -572,8 +609,10 @@ public class NetworkController extends BroadcastReceiver {
void refreshViews() {
Context context = mContext;
- int combinedDataIconId;
+ int combinedSignalIconId;
+ int dataTypeIconId;
String label;
+ int N;
if (mWifiConnected) {
if (mWifiSsid == null) {
@@ -582,35 +621,84 @@ public class NetworkController extends BroadcastReceiver {
label = context.getString(R.string.system_panel_signal_meter_wifi_ssid_format,
mWifiSsid);
}
- combinedDataIconId = mWifiIconId;
- } else if (mDataConnected) {
- label = context.getString(R.string.system_panel_signal_meter_data_connected);
- combinedDataIconId = mDataIconId;
+ combinedSignalIconId = mWifiIconId;
+ dataTypeIconId = 0;
} else {
- label = context.getString(R.string.system_panel_signal_meter_disconnected);
- combinedDataIconId = 0;
+ if (mDataConnected) {
+ label = context.getString(R.string.system_panel_signal_meter_data_connected);
+ } else {
+ label = context.getString(R.string.system_panel_signal_meter_disconnected);
+ }
+ combinedSignalIconId = mDataSignalIconId;
+ dataTypeIconId = mDataTypeIconId;
}
- int N;
+ if (false) {
+ Slog.d(TAG, "refreshViews combinedSignalIconId=0x"
+ + Integer.toHexString(mPhoneSignalIconId)
+ + " mPhoneSignalIconId=0x" + Integer.toHexString(mPhoneSignalIconId)
+ + " mDataDirectionIconId=0x" + Integer.toHexString(mDataDirectionIconId)
+ + " mDataSignalIconId=0x" + Integer.toHexString(mDataSignalIconId)
+ + " mDataTypeIconId=0x" + Integer.toHexString(mDataTypeIconId)
+ + " mWifiIconId=0x" + Integer.toHexString(mWifiIconId));
+ }
+ // the phone icon on phones
if (mLastPhoneSignalIconId != mPhoneSignalIconId) {
mLastPhoneSignalIconId = mPhoneSignalIconId;
- N = mPhoneIconViews.size();
+ N = mPhoneSignalIconViews.size();
for (int i=0; i