summaryrefslogtreecommitdiffstats
path: root/packages
diff options
context:
space:
mode:
authorMike Kasick <mike@kasick.org>2012-02-01 21:36:49 -0500
committerMike Kasick <mike@kasick.org>2012-02-07 11:28:23 -0500
commitf8a78d0a2a16ac6fc3c4ce20a9c3df10d8725156 (patch)
tree3df94330c768fabbdf8e01d3034bf6b55acc1a68 /packages
parent116385191523f0e47d6606d8fb3a21e4c0be45f1 (diff)
downloadframeworks_base-f8a78d0a2a16ac6fc3c4ce20a9c3df10d8725156.zip
frameworks_base-f8a78d0a2a16ac6fc3c4ce20a9c3df10d8725156.tar.gz
frameworks_base-f8a78d0a2a16ac6fc3c4ce20a9c3df10d8725156.tar.bz2
Port WimaxHelper and (the toggle) WimaxButton from CM7.
Both WimaxHelper and WimaxButton are updated to support Samsung's (crespo4g, epicmtd) Wimax4GManager proprietary class, whose API has been somewhat-significantly changed in ICS. Support for HTC's (supersonic, speedy) WimaxController is retained in WimaxHelper, although untested. Note that WimaxManagerConstants was previously misdocumented, confabulating the lookup key EXTRA_4G_STATE ("4g_state") with EXTRA_WIMAX_STATUS ("wimax_status"), which no longer exists. This is also fixed. Change-Id: If6fc4a0a290ad9689a40ee06f9f6a2f3092cfaf9
Diffstat (limited to 'packages')
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerButton.java2
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerWidget.java4
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/WimaxButton.java (renamed from packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/WimaxButton.java.no_build)24
3 files changed, 19 insertions, 11 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerButton.java b/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerButton.java
index 1ea4016..c319fae 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerButton.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerButton.java
@@ -76,7 +76,7 @@ public abstract class PowerButton {
BUTTONS.put(BUTTON_MEDIA_PLAY_PAUSE, MediaPlayPauseButton.class);
BUTTONS.put(BUTTON_MEDIA_PREVIOUS, MediaPreviousButton.class);
BUTTONS.put(BUTTON_MEDIA_NEXT, MediaNextButton.class);
- /* BUTTONS.put(BUTTON_WIMAX, WimaxButton.class); */
+ BUTTONS.put(BUTTON_WIMAX, WimaxButton.class);
}
// this is a list of our currently loaded buttons
private static final HashMap<String, PowerButton> BUTTONS_LOADED = new HashMap<String, PowerButton>();
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerWidget.java b/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerWidget.java
index 97408f2..17ee782 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerWidget.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/PowerWidget.java
@@ -24,7 +24,7 @@ import android.content.IntentFilter;
import android.content.res.Resources;
import android.database.ContentObserver;
import android.net.Uri;
-/* import android.net.wimax.WimaxHelper; */
+import android.net.wimax.WimaxHelper;
import android.os.Handler;
import android.provider.Settings;
import android.util.AttributeSet;
@@ -108,11 +108,9 @@ public class PowerWidget extends FrameLayout {
Log.i(TAG, "Default buttons being loaded");
buttons = BUTTONS_DEFAULT;
// Add the WiMAX button if it's supported
- /* TODO: Fix after WiMax Fixed
if (WimaxHelper.isWimaxSupported(mContext)) {
buttons += BUTTON_DELIMITER + PowerButton.BUTTON_WIMAX;
}
- */
}
Log.i(TAG, "Button list: " + buttons);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/WimaxButton.java.no_build b/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/WimaxButton.java
index 1bedd34..3797114 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/WimaxButton.java.no_build
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/powerwidget/WimaxButton.java
@@ -65,27 +65,36 @@ public class WimaxButton extends PowerButton {
@Override
public void onActualStateChange(Context context, Intent intent) {
- if (!WimaxManagerConstants.WIMAX_ENABLED_CHANGED_ACTION.equals(intent.getAction())) {
+ String action = intent.getAction();
+ int wimaxState;
+
+ if (action.equals(WimaxManagerConstants.NET_4G_STATE_CHANGED_ACTION)) {
+ wimaxState = intent.getIntExtra(WimaxManagerConstants.EXTRA_4G_STATE,
+ WimaxManagerConstants.NET_4G_STATE_UNKNOWN);
+ } else if (action.equals(WimaxManagerConstants.WIMAX_ENABLED_CHANGED_ACTION)) {
+ wimaxState = intent.getIntExtra(WimaxManagerConstants.CURRENT_WIMAX_ENABLED_STATE,
+ WimaxManagerConstants.NET_4G_STATE_UNKNOWN);
+ } else {
return;
}
- int wimaxState = intent.getIntExtra(WimaxManagerConstants.CURRENT_WIMAX_ENABLED_STATE, WimaxManagerConstants.WIMAX_ENABLED_STATE_UNKNOWN);
int widgetState = wimaxStateToFiveState(wimaxState);
setCurrentState(context, widgetState);
}
/**
- * Converts WimaxController's state values into our
+ * Converts Wimax4GManager's state values into our
* WiMAX-common state values.
+ * Also compatible with WimaxController state values.
*/
private static int wimaxStateToFiveState(int wimaxState) {
switch (wimaxState) {
- case WimaxManagerConstants.WIMAX_ENABLED_STATE_DISABLED:
+ case WimaxManagerConstants.NET_4G_STATE_DISABLED:
return STATE_DISABLED;
- case WimaxManagerConstants.WIMAX_ENABLED_STATE_ENABLED:
+ case WimaxManagerConstants.NET_4G_STATE_ENABLED:
return STATE_ENABLED;
- case WimaxManagerConstants.WIMAX_ENABLED_STATE_ENABLING:
+ case WimaxManagerConstants.NET_4G_STATE_ENABLING:
return STATE_TURNING_ON;
- case WimaxManagerConstants.WIMAX_ENABLED_STATE_DISABLING:
+ case WimaxManagerConstants.NET_4G_STATE_DISABLING:
return STATE_TURNING_OFF;
default:
return STATE_UNKNOWN;
@@ -142,6 +151,7 @@ public class WimaxButton extends PowerButton {
@Override
protected IntentFilter getBroadcastIntentFilter() {
IntentFilter filter = new IntentFilter();
+ filter.addAction(WimaxManagerConstants.NET_4G_STATE_CHANGED_ACTION);
filter.addAction(WimaxManagerConstants.WIMAX_ENABLED_CHANGED_ACTION);
return filter;
}