Loading packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java +2 −1 Original line number Original line Diff line number Diff line Loading @@ -66,7 +66,8 @@ public class HotspotTile extends QSTile<QSTile.BooleanState> { @Override @Override protected void handleUpdateState(BooleanState state, Object arg) { 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.label = mContext.getString(R.string.quick_settings_hotspot_label); state.value = mController.isHotspotEnabled(); state.value = mController.isHotspotEnabled(); Loading packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotController.java +1 −0 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,7 @@ public interface HotspotController { boolean isHotspotEnabled(); boolean isHotspotEnabled(); boolean isHotspotSupported(); boolean isHotspotSupported(); void setHotspotEnabled(boolean enabled); void setHotspotEnabled(boolean enabled); boolean isProvisioningNeeded(); public interface Callback { public interface Callback { void onHotspotChanged(boolean enabled); void onHotspotChanged(boolean enabled); Loading packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java +15 −0 Original line number Original line Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.content.Intent; import android.content.IntentFilter; import android.content.IntentFilter; import android.net.ConnectivityManager; import android.net.ConnectivityManager; import android.net.wifi.WifiManager; import android.net.wifi.WifiManager; import android.os.SystemProperties; import android.os.UserHandle; import android.os.UserHandle; import android.provider.Settings; import android.provider.Settings; import android.util.Log; import android.util.Log; Loading Loading @@ -73,6 +74,20 @@ public class HotspotControllerImpl implements HotspotController { return !isSecondaryUser && mConnectivityManager.isTetheringSupported(); return !isSecondaryUser && mConnectivityManager.isTetheringSupported(); } } @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 @Override public void setHotspotEnabled(boolean enabled) { public void setHotspotEnabled(boolean enabled) { final ContentResolver cr = mContext.getContentResolver(); final ContentResolver cr = mContext.getContentResolver(); Loading Loading
packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java +2 −1 Original line number Original line Diff line number Diff line Loading @@ -66,7 +66,8 @@ public class HotspotTile extends QSTile<QSTile.BooleanState> { @Override @Override protected void handleUpdateState(BooleanState state, Object arg) { 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.label = mContext.getString(R.string.quick_settings_hotspot_label); state.value = mController.isHotspotEnabled(); state.value = mController.isHotspotEnabled(); Loading
packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotController.java +1 −0 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,7 @@ public interface HotspotController { boolean isHotspotEnabled(); boolean isHotspotEnabled(); boolean isHotspotSupported(); boolean isHotspotSupported(); void setHotspotEnabled(boolean enabled); void setHotspotEnabled(boolean enabled); boolean isProvisioningNeeded(); public interface Callback { public interface Callback { void onHotspotChanged(boolean enabled); void onHotspotChanged(boolean enabled); Loading
packages/SystemUI/src/com/android/systemui/statusbar/policy/HotspotControllerImpl.java +15 −0 Original line number Original line Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.content.Intent; import android.content.IntentFilter; import android.content.IntentFilter; import android.net.ConnectivityManager; import android.net.ConnectivityManager; import android.net.wifi.WifiManager; import android.net.wifi.WifiManager; import android.os.SystemProperties; import android.os.UserHandle; import android.os.UserHandle; import android.provider.Settings; import android.provider.Settings; import android.util.Log; import android.util.Log; Loading Loading @@ -73,6 +74,20 @@ public class HotspotControllerImpl implements HotspotController { return !isSecondaryUser && mConnectivityManager.isTetheringSupported(); return !isSecondaryUser && mConnectivityManager.isTetheringSupported(); } } @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 @Override public void setHotspotEnabled(boolean enabled) { public void setHotspotEnabled(boolean enabled) { final ContentResolver cr = mContext.getContentResolver(); final ContentResolver cr = mContext.getContentResolver(); Loading