diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/BatteryTile.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/BatterySaverTile.java similarity index 89% rename from packages/SystemUI/src/com/android/systemui/qs/tiles/BatteryTile.java rename to packages/SystemUI/src/com/android/systemui/qs/tiles/BatterySaverTile.java index f7bfc1e6d4fcd..62aa4660bc565 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/BatteryTile.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/BatterySaverTile.java @@ -23,16 +23,18 @@ import android.service.quicksettings.Tile; import android.text.SpannableStringBuilder; import android.text.Spanned; import android.text.style.RelativeSizeSpan; +import android.util.Log; import android.util.TypedValue; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnAttachStateChangeListener; import android.view.View.OnClickListener; import android.view.ViewGroup; -import android.widget.Button; import android.widget.Checkable; import android.widget.ImageView; +import android.widget.Switch; import android.widget.TextView; + import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.settingslib.BatteryInfo; import com.android.settingslib.graph.BatteryMeterDrawableBase; @@ -43,9 +45,8 @@ import com.android.systemui.plugins.qs.QS.DetailAdapter; import com.android.systemui.qs.QSTile; import com.android.systemui.statusbar.policy.BatteryController; -import java.text.NumberFormat; - -public class BatteryTile extends QSTile implements BatteryController.BatteryStateChangeCallback { +public class BatterySaverTile extends QSTile implements + BatteryController.BatteryStateChangeCallback { private final BatteryController mBatteryController; private final BatteryDetail mBatteryDetail = new BatteryDetail(); @@ -56,19 +57,14 @@ public class BatteryTile extends QSTile implements BatteryControll private boolean mDetailShown; private boolean mPluggedIn; - public BatteryTile(Host host) { + public BatterySaverTile(Host host) { super(host); mBatteryController = Dependency.get(BatteryController.class); } @Override - public State newTileState() { - return new QSTile.State(); - } - - @Override - public DetailAdapter getDetailAdapter() { - return mBatteryDetail; + public BooleanState newTileState() { + return new BooleanState(); } @Override @@ -109,22 +105,15 @@ public class BatteryTile extends QSTile implements BatteryControll } @Override - protected void handleUpdateState(State state, Object arg) { - int level = (arg != null) ? (Integer) arg : mLevel; - String percentage = NumberFormat.getPercentInstance().format((double) level / 100.0); - + protected void handleUpdateState(BooleanState state, Object arg) { state.state = mCharging ? Tile.STATE_UNAVAILABLE : mPowerSave ? Tile.STATE_ACTIVE : Tile.STATE_INACTIVE; state.icon = ResourceIcon.get(R.drawable.ic_qs_battery_saver); state.label = mContext.getString(R.string.battery_detail_switch_title); - state.contentDescription = mContext.getString(R.string.accessibility_quick_settings_battery, - percentage) + "," + - (mPowerSave ? mContext.getString(R.string.battery_saver_notification_title) - : mCharging ? mContext.getString(R.string.expanded_header_battery_charging) - : "") - + "," + mContext.getString(R.string.accessibility_battery_details); + state.contentDescription = state.label; + state.value = mPowerSave; state.minimalAccessibilityClassName = state.expandedAccessibilityClassName - = Button.class.getName(); + = Switch.class.getName(); } @Override diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/QSTileHost.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/QSTileHost.java index a1022c4757a59..de002372c442a 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/QSTileHost.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/QSTileHost.java @@ -37,7 +37,7 @@ import com.android.systemui.qs.external.CustomTile; import com.android.systemui.qs.external.TileLifecycleManager; import com.android.systemui.qs.external.TileServices; import com.android.systemui.qs.tiles.AirplaneModeTile; -import com.android.systemui.qs.tiles.BatteryTile; +import com.android.systemui.qs.tiles.BatterySaverTile; import com.android.systemui.qs.tiles.BluetoothTile; import com.android.systemui.qs.tiles.CastTile; import com.android.systemui.qs.tiles.CellularTile; @@ -273,7 +273,7 @@ public class QSTileHost implements QSTile.Host, Tunable { else if (tileSpec.equals("cast")) return new CastTile(this); else if (tileSpec.equals("hotspot")) return new HotspotTile(this); else if (tileSpec.equals("user")) return new UserTile(this); - else if (tileSpec.equals("battery")) return new BatteryTile(this); + else if (tileSpec.equals("battery")) return new BatterySaverTile(this); else if (tileSpec.equals("saver")) return new DataSaverTile(this); else if (tileSpec.equals("night")) return new NightDisplayTile(this); else if (tileSpec.equals("nfc")) return new NfcTile(this);