summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Wilson <simonwilson@google.com>2011-03-21 16:58:41 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-03-21 16:58:41 -0700
commit1ba4897e89fc30042a086b26755dfdb80af258dd (patch)
treeb702d811caa77c2214024b983ea25d33e12a2ea6
parent661e9b371fcc1a2aec5dfd74f2cc65db1d8a77d5 (diff)
parent081148dd3238e73701a7579c2d869e588313ccd0 (diff)
downloadbase-1ba4897e89fc30042a086b26755dfdb80af258dd.tar.gz
Merge "DO NOT MERGE Change WiMAX indicator display" into gingerbread
-rw-r--r--core/java/android/net/wimax/WimaxManagerConstants.java58
-rw-r--r--core/res/res/drawable-hdpi/stat_sys_data_wimax_signal_3_fully.pngbin0 -> 2219 bytes
-rw-r--r--core/res/res/drawable-hdpi/stat_sys_data_wimax_signal_disconnected.pngbin0 -> 1807 bytes
-rw-r--r--packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_0.pngbin0 -> 2060 bytes
-rw-r--r--packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_0_fully.pngbin0 -> 2050 bytes
-rw-r--r--packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_1.pngbin0 -> 2156 bytes
-rw-r--r--packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_1_fully.pngbin0 -> 2118 bytes
-rw-r--r--packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_2.pngbin0 -> 2220 bytes
-rw-r--r--packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_2_fully.pngbin0 -> 2202 bytes
-rw-r--r--packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_3.pngbin0 -> 2346 bytes
-rw-r--r--packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_3_fully.pngbin0 -> 2219 bytes
-rw-r--r--packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_disconnected.pngbin0 -> 1807 bytes
-rw-r--r--packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_idle.pngbin0 -> 1663 bytes
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/StatusBarPolicy.java77
14 files changed, 96 insertions, 39 deletions
diff --git a/core/java/android/net/wimax/WimaxManagerConstants.java b/core/java/android/net/wimax/WimaxManagerConstants.java
index 72e63b9d90e2..5ec4e96116d5 100644
--- a/core/java/android/net/wimax/WimaxManagerConstants.java
+++ b/core/java/android/net/wimax/WimaxManagerConstants.java
@@ -10,15 +10,15 @@ public class WimaxManagerConstants
* Used by android.net.wimax.WimaxManager for handling management of
* Wimax access.
*/
- public static final String WIMAX_SERVICE="WiMax";
+ public static final String WIMAX_SERVICE = "WiMax";
/**
* Broadcast intent action indicating that Wimax has been enabled, disabled,
* enabling, disabling, or unknown. One extra provides this state as an int.
* Another extra provides the previous state, if available.
*/
- public static final String WIMAX_STATUS_CHANGED_ACTION
- = "android.net.wimax.WIMAX_STATUS_CHANGED";
+ public static final String WIMAX_ENABLED_STATUS_CHANGED =
+ "android.net.wimax.WIMAX_STATUS_CHANGED";
/**
* The lookup key for an int that indicates whether Wimax is enabled,
@@ -27,16 +27,38 @@ public class WimaxManagerConstants
public static final String EXTRA_WIMAX_STATUS = "wimax_status";
/**
- * Broadcast intent action indicating that Wimax data has been recieved, sent. One extra
- * provides the state as int.
+ * Broadcast intent action indicating that Wimax state has been changed
+ * state could be scanning, connecting, connected, disconnecting, disconnected
+ * initializing, initialized, unknown and ready. One extra provides this state as an int.
+ * Another extra provides the previous state, if available.
+ */
+ public static final String WIMAX_STATE_CHANGED_ACTION =
+ "android.net.wimax.WIMAX_STATE_CHANGE";
+
+ /**
+ * Broadcast intent action indicating that Wimax signal level has been changed.
+ * Level varies from 0 to 3.
+ */
+ public static final String SIGNAL_LEVEL_CHANGED_ACTION =
+ "android.net.wimax.SIGNAL_LEVEL_CHANGED";
+
+ /**
+ * The lookup key for an int that indicates whether Wimax state is
+ * scanning, connecting, connected, disconnecting, disconnected
+ * initializing, initialized, unknown and ready.
*/
- public static final String WIMAX_DATA_USED_ACTION = "android.net.wimax.WIMAX_DATA_USED";
+ public static final String EXTRA_WIMAX_STATE = "WimaxState";
/**
- * The lookup key for an int that indicates whether Wimax is data is being recieved or sent,
- * up indicates data is being sent and down indicates data being recieved.
+ * The lookup key for an int that indicates whether state of Wimax
+ * is idle.
*/
- public static final String EXTRA_UP_DOWN_DATA = "upDownData";
+ public static final String EXTRA_WIMAX_STATE_DETAIL = "WimaxStateDetail";
+
+ /**
+ * The lookup key for an int that indicates Wimax signal level.
+ */
+ public static final String EXTRA_NEW_SIGNAL_LEVEL = "newSignalLevel";
/**
* Indicatates Wimax is disabled.
@@ -64,22 +86,18 @@ public class WimaxManagerConstants
public static final int WIMAX_DEREGISTRATION = 8;
/**
- * Indicatates no data on wimax.
- */
- public static final int NO_DATA = 0;
-
- /**
- * Indicatates data is being sent.
+ * Indicatates wimax state is unknown.
*/
- public static final int UP_DATA = 1;
+ public static final int WIMAX_STATE_UNKNOWN = 0;
/**
- * Indicatates dats is being revieved.
+ * Indicatates wimax state is connected.
*/
- public static final int DOWN_DATA = 2;
+ public static final int WIMAX_STATE_CONNECTED = 7;
/**
- * Indicatates data is being recieved and sent simultaneously.
+ * Indicatates wimax state is disconnected.
*/
- public static final int UP_DOWN_DATA = 3;
+ public static final int WIMAX_STATE_DISCONNECTED = 9;
+
}
diff --git a/core/res/res/drawable-hdpi/stat_sys_data_wimax_signal_3_fully.png b/core/res/res/drawable-hdpi/stat_sys_data_wimax_signal_3_fully.png
new file mode 100644
index 000000000000..c2e4b783c31e
--- /dev/null
+++ b/core/res/res/drawable-hdpi/stat_sys_data_wimax_signal_3_fully.png
Binary files differ
diff --git a/core/res/res/drawable-hdpi/stat_sys_data_wimax_signal_disconnected.png b/core/res/res/drawable-hdpi/stat_sys_data_wimax_signal_disconnected.png
new file mode 100644
index 000000000000..51b839fd5572
--- /dev/null
+++ b/core/res/res/drawable-hdpi/stat_sys_data_wimax_signal_disconnected.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_0.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_0.png
new file mode 100644
index 000000000000..f24d8016fca9
--- /dev/null
+++ b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_0.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_0_fully.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_0_fully.png
new file mode 100644
index 000000000000..66eb5db188d2
--- /dev/null
+++ b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_0_fully.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_1.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_1.png
new file mode 100644
index 000000000000..edff74a46275
--- /dev/null
+++ b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_1.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_1_fully.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_1_fully.png
new file mode 100644
index 000000000000..1cdd4eb5fbf0
--- /dev/null
+++ b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_1_fully.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_2.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_2.png
new file mode 100644
index 000000000000..95fdaf9e6f21
--- /dev/null
+++ b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_2.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_2_fully.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_2_fully.png
new file mode 100644
index 000000000000..8678e39f8d6a
--- /dev/null
+++ b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_2_fully.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_3.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_3.png
new file mode 100644
index 000000000000..1d2d2901acf3
--- /dev/null
+++ b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_3.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_3_fully.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_3_fully.png
new file mode 100644
index 000000000000..c2e4b783c31e
--- /dev/null
+++ b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_3_fully.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_disconnected.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_disconnected.png
new file mode 100644
index 000000000000..51b839fd5572
--- /dev/null
+++ b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_disconnected.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_idle.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_idle.png
new file mode 100644
index 000000000000..b20c5c78ef4c
--- /dev/null
+++ b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_wimax_signal_idle.png
Binary files differ
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarPolicy.java b/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarPolicy.java
index 660eeac26631..8c0fecf8d44e 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarPolicy.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarPolicy.java
@@ -499,17 +499,23 @@ public class StatusBarPolicy {
private boolean mIsWifiConnected = false;
//4G
- private static final int[][] sDataNetType_4g = {
- { R.drawable.stat_sys_data_connected_4g,
- R.drawable.stat_sys_data_out_4g,
- R.drawable.stat_sys_data_in_4g,
- R.drawable.stat_sys_data_inandout_4g },
- { R.drawable.stat_sys_data_fully_connected_4g,
- R.drawable.stat_sys_data_fully_out_4g,
- R.drawable.stat_sys_data_fully_in_4g,
- R.drawable.stat_sys_data_fully_inandout_4g }
+ private static final int[][] sWimaxSignalImages = {
+ { R.drawable.stat_sys_data_wimax_signal_0,
+ R.drawable.stat_sys_data_wimax_signal_1,
+ R.drawable.stat_sys_data_wimax_signal_2,
+ R.drawable.stat_sys_data_wimax_signal_3 },
+ { R.drawable.stat_sys_data_wimax_signal_0_fully,
+ R.drawable.stat_sys_data_wimax_signal_1_fully,
+ R.drawable.stat_sys_data_wimax_signal_2_fully,
+ R.drawable.stat_sys_data_wimax_signal_3_fully }
};
+ private static final int sWimaxDisconnectedImg =
+ R.drawable.stat_sys_data_wimax_signal_disconnected;
+ private static final int sWimaxIdleImg = R.drawable.stat_sys_data_wimax_signal_idle;
private boolean mIsWimaxConnected = false;
+ private boolean mIsWimaxEnabled = false;
+ private int mWimaxSignal = 0;
+ private int mWimaxState = 0;
// state of inet connection - 0 not connected, 100 connected
private int mInetCondition = 0;
@@ -568,7 +574,9 @@ public class StatusBarPolicy {
// TODO - stop using other means to get wifi/mobile info
updateConnectivity(intent);
}
- else if (action.equals(WimaxManagerConstants.WIMAX_DATA_USED_ACTION)) {
+ else if (action.equals(WimaxManagerConstants.WIMAX_ENABLED_STATUS_CHANGED) ||
+ action.equals(WimaxManagerConstants.SIGNAL_LEVEL_CHANGED_ACTION) ||
+ action.equals(WimaxManagerConstants.WIMAX_STATE_CHANGED_ACTION)) {
updateWiMAX(intent);
}
}
@@ -616,7 +624,7 @@ public class StatusBarPolicy {
boolean isWimaxEnabled = mContext.getResources().getBoolean(
com.android.internal.R.bool.config_wimaxEnabled);
if (isWimaxEnabled) {
- mService.setIcon("wimax", R.drawable.stat_sys_data_connected_4g, 0);
+ mService.setIcon("wimax", sWimaxDisconnectedImg, 0);
mService.setIconVisibility("wimax", false);
}
@@ -685,7 +693,9 @@ public class StatusBarPolicy {
filter.addAction(TtyIntent.TTY_ENABLED_CHANGE_ACTION);
filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
filter.addAction(ConnectivityManager.INET_CONDITION_ACTION);
- filter.addAction(WimaxManagerConstants.WIMAX_DATA_USED_ACTION);
+ filter.addAction(WimaxManagerConstants.WIMAX_STATE_CHANGED_ACTION);
+ filter.addAction(WimaxManagerConstants.SIGNAL_LEVEL_CHANGED_ACTION);
+ filter.addAction(WimaxManagerConstants.WIMAX_ENABLED_STATUS_CHANGED);
mContext.registerReceiver(mIntentReceiver, filter, null, mHandler);
@@ -935,7 +945,6 @@ public class StatusBarPolicy {
mService.setIconVisibility("wimax", true);
} else {
mIsWimaxConnected = false;
- mService.setIconVisibility("wimax", false);
}
updateWiMAX(intent);
break;
@@ -1321,13 +1330,44 @@ public class StatusBarPolicy {
private final void updateWiMAX(Intent intent) {
final String action = intent.getAction();
- int iconId = sDataNetType_4g[0][0];
- if (action.equals(WimaxManagerConstants.WIMAX_DATA_USED_ACTION)) {
- int nUpDown = intent.getIntExtra(WimaxManagerConstants.EXTRA_UP_DOWN_DATA, 0);
- iconId = sDataNetType_4g[mInetCondition][nUpDown];
+ int iconId = sWimaxDisconnectedImg;
+
+ if (action.equals(WimaxManagerConstants. WIMAX_ENABLED_STATUS_CHANGED)) {
+ int mWimaxStatus = intent.getIntExtra(WimaxManagerConstants.EXTRA_WIMAX_STATUS,
+ WimaxManagerConstants.WIMAX_STATUS_DISABLED);
+ switch(mWimaxStatus) {
+ case WimaxManagerConstants.WIMAX_STATUS_ENABLED:
+ mIsWimaxEnabled = true;
+ break;
+ case WimaxManagerConstants.WIMAX_STATUS_DISABLED:
+ mIsWimaxEnabled = false;
+ break;
+ }
+ } else if (action.equals(WimaxManagerConstants.SIGNAL_LEVEL_CHANGED_ACTION)) {
+ mWimaxSignal = intent.getIntExtra(WimaxManagerConstants.EXTRA_NEW_SIGNAL_LEVEL, 0);
+ } else if (action.equals(WimaxManagerConstants.WIMAX_STATE_CHANGED_ACTION)) {
+ mWimaxState = intent.getIntExtra(WimaxManagerConstants.EXTRA_WIMAX_STATE,
+ WimaxManagerConstants.WIMAX_STATE_UNKNOWN);
+ int mExtraWimaxState = intent.getIntExtra(
+ WimaxManagerConstants.EXTRA_WIMAX_STATE_DETAIL,
+ WimaxManagerConstants.WIMAX_DEREGISTRATION);
+
+ switch(mWimaxState) {
+ case WimaxManagerConstants.WIMAX_STATE_DISCONNECTED:
+ iconId = sWimaxDisconnectedImg;
+ break;
+ case WimaxManagerConstants.WIMAX_STATE_CONNECTED:
+ if(mExtraWimaxState == WimaxManagerConstants.WIMAX_IDLE) {
+ iconId = sWimaxIdleImg;
+ }
+ else {
+ iconId = sWimaxSignalImages[mInetCondition][mWimaxSignal];
+ }
+ break;
+ }
mService.setIcon("wimax", iconId, 0);
- mService.setIconVisibility("wimax", mIsWimaxConnected);
}
+ mService.setIconVisibility("wimax", mIsWimaxEnabled);
}
private final void updateGps(Intent intent) {
@@ -1415,7 +1455,6 @@ public class StatusBarPolicy {
mService.setIcon("phone_signal", mPhoneSignalIconId, 0);
}
-
private class StatusBarHandler extends Handler {
@Override
public void handleMessage(Message msg) {