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
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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<AirplaneBooleanState> {
|
||||
public class HotspotTile extends QSTileImpl<BooleanState> {
|
||||
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<AirplaneBooleanState> {
|
||||
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<AirplaneBooleanState> {
|
||||
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<AirplaneBooleanState> {
|
||||
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<AirplaneBooleanState> {
|
||||
if (listening) {
|
||||
refreshState();
|
||||
}
|
||||
mAirplaneMode.setListening(listening);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -95,11 +80,15 @@ public class HotspotTile extends QSTileImpl<AirplaneBooleanState> {
|
||||
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<AirplaneBooleanState> {
|
||||
}
|
||||
|
||||
@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<AirplaneBooleanState> {
|
||||
|
||||
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<AirplaneBooleanState> {
|
||||
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) {
|
||||
|
||||
Reference in New Issue
Block a user