Loading packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTile.java +4 −1 Original line number Diff line number Diff line Loading @@ -117,6 +117,7 @@ public interface QSTile { public String expandedAccessibilityClassName; public SlashState slash; public boolean handlesLongClick = true; public boolean showRippleEffect = true; public boolean copyTo(State other) { if (other == null) throw new IllegalArgumentException(); Loading @@ -135,7 +136,8 @@ public interface QSTile { || !Objects.equals(other.isTransient, isTransient) || !Objects.equals(other.dualTarget, dualTarget) || !Objects.equals(other.slash, slash) || !Objects.equals(other.handlesLongClick, handlesLongClick); || !Objects.equals(other.handlesLongClick, handlesLongClick) || !Objects.equals(other.showRippleEffect, showRippleEffect); other.icon = icon; other.iconSupplier = iconSupplier; other.label = label; Loading @@ -149,6 +151,7 @@ public interface QSTile { other.isTransient = isTransient; other.slash = slash != null ? slash.copy() : null; other.handlesLongClick = handlesLongClick; other.showRippleEffect = showRippleEffect; return changed; } Loading packages/SystemUI/src/com/android/systemui/qs/tileimpl/QSTileBaseView.java +3 −2 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ import android.view.accessibility.AccessibilityEvent; import android.view.accessibility.AccessibilityNodeInfo; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.ImageView.ScaleType; import android.widget.Switch; import com.android.settingslib.Utils; Loading @@ -63,6 +62,7 @@ public class QSTileBaseView extends com.android.systemui.plugins.qs.QSTileView { private boolean mTileState; private boolean mCollapsedView; private boolean mClicked; private boolean mShowRippleEffect = true; private final ImageView mBg; private final int mColorActive; Loading Loading @@ -209,6 +209,7 @@ public class QSTileBaseView extends com.android.systemui.plugins.qs.QSTileView { mCircleColor = circleColor; } mShowRippleEffect = state.showRippleEffect; setClickable(state.state != Tile.STATE_UNAVAILABLE); setLongClickable(state.handlesLongClick); mIcon.setIcon(state, allowAnimations); Loading Loading @@ -254,7 +255,7 @@ public class QSTileBaseView extends com.android.systemui.plugins.qs.QSTileView { @Override public void setClickable(boolean clickable) { super.setClickable(clickable); setBackground(clickable ? mRipple : null); setBackground(clickable && mShowRippleEffect ? mRipple : null); } @Override Loading packages/SystemUI/src/com/android/systemui/qs/tiles/BatterySaverTile.java +17 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.systemui.qs.tiles; import android.content.Intent; import android.provider.Settings.Secure; import android.service.quicksettings.Tile; import android.widget.Switch; Loading @@ -23,6 +24,7 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.systemui.R; import com.android.systemui.plugins.qs.QSTile.BooleanState; import com.android.systemui.qs.QSHost; import com.android.systemui.qs.SecureSetting; import com.android.systemui.qs.tileimpl.QSTileImpl; import com.android.systemui.statusbar.policy.BatteryController; Loading @@ -32,6 +34,7 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements BatteryController.BatteryStateChangeCallback { private final BatteryController mBatteryController; private final SecureSetting mSetting; private int mLevel; private boolean mPowerSave; Loading @@ -45,6 +48,12 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements super(host); mBatteryController = batteryController; mBatteryController.observe(getLifecycle(), this); mSetting = new SecureSetting(mContext, mHandler, Secure.LOW_POWER_WARNING_ACKNOWLEDGED) { @Override protected void handleValueChanged(int value, boolean observedChange) { handleRefreshState(null); } }; } @Override Loading @@ -52,6 +61,12 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements return new BooleanState(); } @Override protected void handleDestroy() { super.handleDestroy(); mSetting.setListening(false); } @Override public int getMetricsCategory() { return MetricsEvent.QS_BATTERY_TILE; Loading @@ -59,6 +74,7 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements @Override public void handleSetListening(boolean listening) { mSetting.setListening(listening); } @Override Loading Loading @@ -88,6 +104,7 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements state.contentDescription = state.label; state.value = mPowerSave; state.expandedAccessibilityClassName = Switch.class.getName(); state.showRippleEffect = mSetting.getValue() == 0; } @Override Loading Loading
packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTile.java +4 −1 Original line number Diff line number Diff line Loading @@ -117,6 +117,7 @@ public interface QSTile { public String expandedAccessibilityClassName; public SlashState slash; public boolean handlesLongClick = true; public boolean showRippleEffect = true; public boolean copyTo(State other) { if (other == null) throw new IllegalArgumentException(); Loading @@ -135,7 +136,8 @@ public interface QSTile { || !Objects.equals(other.isTransient, isTransient) || !Objects.equals(other.dualTarget, dualTarget) || !Objects.equals(other.slash, slash) || !Objects.equals(other.handlesLongClick, handlesLongClick); || !Objects.equals(other.handlesLongClick, handlesLongClick) || !Objects.equals(other.showRippleEffect, showRippleEffect); other.icon = icon; other.iconSupplier = iconSupplier; other.label = label; Loading @@ -149,6 +151,7 @@ public interface QSTile { other.isTransient = isTransient; other.slash = slash != null ? slash.copy() : null; other.handlesLongClick = handlesLongClick; other.showRippleEffect = showRippleEffect; return changed; } Loading
packages/SystemUI/src/com/android/systemui/qs/tileimpl/QSTileBaseView.java +3 −2 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ import android.view.accessibility.AccessibilityEvent; import android.view.accessibility.AccessibilityNodeInfo; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.ImageView.ScaleType; import android.widget.Switch; import com.android.settingslib.Utils; Loading @@ -63,6 +62,7 @@ public class QSTileBaseView extends com.android.systemui.plugins.qs.QSTileView { private boolean mTileState; private boolean mCollapsedView; private boolean mClicked; private boolean mShowRippleEffect = true; private final ImageView mBg; private final int mColorActive; Loading Loading @@ -209,6 +209,7 @@ public class QSTileBaseView extends com.android.systemui.plugins.qs.QSTileView { mCircleColor = circleColor; } mShowRippleEffect = state.showRippleEffect; setClickable(state.state != Tile.STATE_UNAVAILABLE); setLongClickable(state.handlesLongClick); mIcon.setIcon(state, allowAnimations); Loading Loading @@ -254,7 +255,7 @@ public class QSTileBaseView extends com.android.systemui.plugins.qs.QSTileView { @Override public void setClickable(boolean clickable) { super.setClickable(clickable); setBackground(clickable ? mRipple : null); setBackground(clickable && mShowRippleEffect ? mRipple : null); } @Override Loading
packages/SystemUI/src/com/android/systemui/qs/tiles/BatterySaverTile.java +17 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.systemui.qs.tiles; import android.content.Intent; import android.provider.Settings.Secure; import android.service.quicksettings.Tile; import android.widget.Switch; Loading @@ -23,6 +24,7 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.systemui.R; import com.android.systemui.plugins.qs.QSTile.BooleanState; import com.android.systemui.qs.QSHost; import com.android.systemui.qs.SecureSetting; import com.android.systemui.qs.tileimpl.QSTileImpl; import com.android.systemui.statusbar.policy.BatteryController; Loading @@ -32,6 +34,7 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements BatteryController.BatteryStateChangeCallback { private final BatteryController mBatteryController; private final SecureSetting mSetting; private int mLevel; private boolean mPowerSave; Loading @@ -45,6 +48,12 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements super(host); mBatteryController = batteryController; mBatteryController.observe(getLifecycle(), this); mSetting = new SecureSetting(mContext, mHandler, Secure.LOW_POWER_WARNING_ACKNOWLEDGED) { @Override protected void handleValueChanged(int value, boolean observedChange) { handleRefreshState(null); } }; } @Override Loading @@ -52,6 +61,12 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements return new BooleanState(); } @Override protected void handleDestroy() { super.handleDestroy(); mSetting.setListening(false); } @Override public int getMetricsCategory() { return MetricsEvent.QS_BATTERY_TILE; Loading @@ -59,6 +74,7 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements @Override public void handleSetListening(boolean listening) { mSetting.setListening(listening); } @Override Loading Loading @@ -88,6 +104,7 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements state.contentDescription = state.label; state.value = mPowerSave; state.expandedAccessibilityClassName = Switch.class.getName(); state.showRippleEffect = mSetting.getValue() == 0; } @Override Loading