From 1c2c337781dc44177f90eb4a4cf1cfba406d6831 Mon Sep 17 00:00:00 2001 From: Salvador Martinez Date: Fri, 8 Mar 2019 16:11:23 -0800 Subject: [PATCH] Remove UI restriction on hotspot & airplane mode being on together This just makes it so that the hotspot tile doesn't care about airplane mode. Apparently the airplane mode tile already didn't check anything for hotspot. Test: Manual Bug: 111681176 Change-Id: I786077ad5e817ed9ee6753fa1be220e846c77e16 --- .../android/systemui/plugins/qs/QSTile.java | 21 ------------ .../systemui/qs/tiles/HotspotTile.java | 32 ++++++------------- 2 files changed, 10 insertions(+), 43 deletions(-) diff --git a/packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTile.java b/packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTile.java index bca353050c46f..42600c1573871 100644 --- a/packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTile.java +++ b/packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTile.java @@ -247,27 +247,6 @@ public interface QSTile { } } - - @ProvidesInterface(version = AirplaneBooleanState.VERSION) - public static class AirplaneBooleanState extends BooleanState { - public static final int VERSION = 1; - public boolean isAirplaneMode; - - @Override - public boolean copyTo(State other) { - final AirplaneBooleanState o = (AirplaneBooleanState) other; - final boolean changed = super.copyTo(other) || o.isAirplaneMode != isAirplaneMode; - o.isAirplaneMode = isAirplaneMode; - return changed; - } - - public State copy() { - AirplaneBooleanState state = new AirplaneBooleanState(); - copyTo(state); - return state; - } - } - @ProvidesInterface(version = SlashState.VERSION) public static class SlashState { public static final int VERSION = 2; 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 b7e07f8283219..5e6f18e511d9c 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/HotspotTile.java @@ -20,14 +20,12 @@ import android.annotation.Nullable; import android.content.ComponentName; import android.content.Intent; import android.os.UserManager; -import android.provider.Settings.Global; import android.service.quicksettings.Tile; import android.widget.Switch; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.systemui.R; -import com.android.systemui.plugins.qs.QSTile.AirplaneBooleanState; -import com.android.systemui.qs.GlobalSetting; +import com.android.systemui.plugins.qs.QSTile.BooleanState; import com.android.systemui.qs.QSHost; import com.android.systemui.qs.tileimpl.QSTileImpl; import com.android.systemui.statusbar.policy.DataSaverController; @@ -36,7 +34,7 @@ import com.android.systemui.statusbar.policy.HotspotController; import javax.inject.Inject; /** Quick settings tile: Hotspot **/ -public class HotspotTile extends QSTileImpl { +public class HotspotTile extends QSTileImpl { private static final Intent TETHER_SETTINGS = new Intent().setComponent(new ComponentName( "com.android.settings", "com.android.settings.TetherSettings")); @@ -46,7 +44,6 @@ public class HotspotTile extends QSTileImpl { private final DataSaverController mDataSaverController; private final HotspotAndDataSaverCallbacks mCallbacks = new HotspotAndDataSaverCallbacks(); - private final GlobalSetting mAirplaneMode; private boolean mListening; @Inject @@ -55,12 +52,6 @@ public class HotspotTile extends QSTileImpl { super(host); mHotspotController = hotspotController; mDataSaverController = dataSaverController; - mAirplaneMode = new GlobalSetting(mContext, mHandler, Global.AIRPLANE_MODE_ON) { - @Override - protected void handleValueChanged(int value) { - refreshState(); - } - }; mHotspotController.observe(this, mCallbacks); mDataSaverController.observe(this, mCallbacks); } @@ -75,11 +66,6 @@ public class HotspotTile extends QSTileImpl { super.handleDestroy(); } - @Override - public AirplaneBooleanState newTileState() { - return new AirplaneBooleanState(); - } - @Override public void handleSetListening(boolean listening) { if (mListening == listening) return; @@ -87,7 +73,6 @@ public class HotspotTile extends QSTileImpl { if (listening) { refreshState(); } - mAirplaneMode.setListening(listening); } @Override @@ -95,11 +80,15 @@ public class HotspotTile extends QSTileImpl { return new Intent(TETHER_SETTINGS); } + @Override + public BooleanState newTileState() { + return new BooleanState(); + } + @Override protected void handleClick() { final boolean isEnabled = mState.value; - if (!isEnabled && - (mAirplaneMode.getValue() != 0 || mDataSaverController.isDataSaverEnabled())) { + if (!isEnabled && mDataSaverController.isDataSaverEnabled()) { return; } // Immediately enter transient enabling state when turning hotspot on. @@ -113,7 +102,7 @@ public class HotspotTile extends QSTileImpl { } @Override - protected void handleUpdateState(AirplaneBooleanState state, Object arg) { + protected void handleUpdateState(BooleanState state, Object arg) { final boolean transientEnabling = arg == ARG_SHOW_TRANSIENT_ENABLING; if (state.slash == null) { state.slash = new SlashState(); @@ -138,7 +127,6 @@ public class HotspotTile extends QSTileImpl { state.icon = mEnabledStatic; state.label = mContext.getString(R.string.quick_settings_hotspot_label); - state.isAirplaneMode = mAirplaneMode.getValue() != 0; state.isTransient = isTransient; state.slash.isSlashed = !state.value && !state.isTransient; if (state.isTransient) { @@ -147,7 +135,7 @@ public class HotspotTile extends QSTileImpl { state.expandedAccessibilityClassName = Switch.class.getName(); state.contentDescription = state.label; - final boolean isTileUnavailable = (state.isAirplaneMode || isDataSaverEnabled); + final boolean isTileUnavailable = isDataSaverEnabled; final boolean isTileActive = (state.value || state.isTransient); if (isTileUnavailable) {