diff options
author | Jason Monk <jmonk@google.com> | 2014-10-07 19:58:48 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-10-07 19:58:48 +0000 |
commit | 000b85fa8ca68b530b18a7318f8ac49b76b1114f (patch) | |
tree | b76869f79c49a239f5d892e8e346490d7403c169 /packages | |
parent | 4e5583554151ea95d8d573e3d64947afbc51f34f (diff) | |
parent | 733bcc7fbe8f03c92f20c57dd25cbc3b011cef9e (diff) | |
download | frameworks_base-000b85fa8ca68b530b18a7318f8ac49b76b1114f.zip frameworks_base-000b85fa8ca68b530b18a7318f8ac49b76b1114f.tar.gz frameworks_base-000b85fa8ca68b530b18a7318f8ac49b76b1114f.tar.bz2 |
am 733bcc7f: Merge "Hide hotspot tile if \'provisioning\' is needed" into lmp-dev
* commit '733bcc7fbe8f03c92f20c57dd25cbc3b011cef9e':
Hide hotspot tile if 'provisioning' is needed
Diffstat (limited to 'packages')
3 files changed, 18 insertions, 1 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 9984fca..ce99cc3 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java @@ -66,7 +66,8 @@ public class HotspotTile extends QSTile<QSTile.BooleanState> { @Override protected void handleUpdateState(BooleanState state, Object arg) { - state.visible = mController.isHotspotSupported() && mUsageTracker.isRecentlyUsed(); + state.visible = mController.isHotspotSupported() && mUsageTracker.isRecentlyUsed() + && !mController.isProvisioningNeeded(); state.label = mContext.getString(R.string.quick_settings_hotspot_label); state.value = mController.isHotspotEnabled(); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotController.java index 7ca91a5..0863c86 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotController.java @@ -22,6 +22,7 @@ public interface HotspotController { boolean isHotspotEnabled(); boolean isHotspotSupported(); void setHotspotEnabled(boolean enabled); + boolean isProvisioningNeeded(); public interface Callback { void onHotspotChanged(boolean 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 dd706bb9..63c1100 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java @@ -24,6 +24,7 @@ import android.content.Intent; import android.content.IntentFilter; import android.net.ConnectivityManager; import android.net.wifi.WifiManager; +import android.os.SystemProperties; import android.os.UserHandle; import android.provider.Settings; import android.util.Log; @@ -74,6 +75,20 @@ public class HotspotControllerImpl implements HotspotController { } @Override + public boolean isProvisioningNeeded() { + // Keep in sync with other usage of config_mobile_hotspot_provision_app. + // TetherSettings#isProvisioningNeeded and + // ConnectivityManager#enforceTetherChangePermission + String[] provisionApp = mContext.getResources().getStringArray( + com.android.internal.R.array.config_mobile_hotspot_provision_app); + if (SystemProperties.getBoolean("net.tethering.noprovisioning", false) + || provisionApp == null) { + return false; + } + return (provisionApp.length == 2); + } + + @Override public void setHotspotEnabled(boolean enabled) { final ContentResolver cr = mContext.getContentResolver(); // This needs to be kept up to date with Settings (WifiApEnabler.setSoftapEnabled) |