From b8a46a6c77bcb4a6d837c6ddfc4418a21022949a Mon Sep 17 00:00:00 2001 From: Julia Reynolds Date: Tue, 14 Jul 2015 13:36:30 -0400 Subject: [PATCH] Pass wifi ap state through to tile when receiver triggered. Bug: 22450078 Change-Id: I9b339aa2238a7427291bfdc2ef6aab58dcdb5cf3 --- .../src/com/android/systemui/qs/tiles/HotspotTile.java | 8 ++++++-- .../systemui/statusbar/policy/HotspotControllerImpl.java | 4 +++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java index f28a24b761728..ddde106a6074b 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java @@ -94,7 +94,11 @@ public class HotspotTile extends QSTile { state.visible = mController.isHotspotSupported() && mUsageTracker.isRecentlyUsed(); state.label = mContext.getString(R.string.quick_settings_hotspot_label); - state.value = mController.isHotspotEnabled(); + if (arg instanceof Boolean) { + state.value = (boolean) arg; + } else { + mController.isHotspotEnabled(); + } state.icon = state.visible && state.value ? mEnable : mDisable; } @@ -120,7 +124,7 @@ public class HotspotTile extends QSTile { private final class Callback implements HotspotController.Callback { @Override public void onHotspotChanged(boolean enabled) { - refreshState(); + refreshState(enabled); } }; diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java index 4bfd52860a12d..1e3bc4d46eb12 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java @@ -111,7 +111,9 @@ public class HotspotControllerImpl implements HotspotController { @Override public void onReceive(Context context, Intent intent) { if (DEBUG) Log.d(TAG, "onReceive " + intent.getAction()); - fireCallback(isHotspotEnabled()); + int state = intent.getIntExtra( + WifiManager.EXTRA_WIFI_AP_STATE, WifiManager.WIFI_AP_STATE_FAILED); + fireCallback(WifiManager.WIFI_AP_STATE_ENABLED == state); } } }