Loading res/layout/battery_header.xml +8 −10 Original line number Diff line number Diff line Loading @@ -22,15 +22,12 @@ android:layout_height="match_parent" android:layout_gravity="center" android:orientation="horizontal" android:paddingTop="24dp" android:paddingBottom="24dp" style="@style/EntityHeader"> <LinearLayout android:layout_width="0dp" android:layout_width="170dp" android:layout_height="wrap_content" android:layout_weight="1" android:layout_marginStart="56dp" android:layout_marginStart="72dp" android:layout_marginEnd="8dp" android:orientation="vertical"> Loading @@ -39,8 +36,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="12dp" android:fontFamily="@*android:string/config_headlineFontFamily" android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Display1"/> android:textAppearance="@style/TextAppearance.EntityHeaderTitle" android:textSize="36sp" /> <TextView android:id="@+id/summary1" Loading @@ -49,19 +46,20 @@ android:layout_marginTop="8dp" android:minLines="2" android:textAppearance="@android:style/TextAppearance.DeviceDefault.Small"/> android:textColor="?android:attr/textColorPrimary"/> <TextView android:id="@+id/summary2" android:layout_width="match_parent" android:layout_height="wrap_content" android:textAppearance="@android:style/TextAppearance.DeviceDefault.Small"/> android:textColor="?android:attr/textColorPrimary"/> </LinearLayout> <com.android.settings.fuelgauge.BatteryMeterView android:id="@+id/battery_header_icon" android:layout_width="@dimen/battery_meter_width" android:layout_width="match_parent" android:layout_height="@dimen/battery_meter_height" android:layout_marginEnd="16dp"/> android:layout_gravity="center"/> </LinearLayout> No newline at end of file res/values/strings.xml +3 −0 Original line number Diff line number Diff line Loading @@ -5226,6 +5226,9 @@ <item quantity="other">%1$d apps restricted</item> </plurals> <!-- Title to display the battery percentage. [CHAR LIMIT=24] --> <string name="battery_header_title_alternate"><xliff:g id="number" example="88">^1</xliff:g><small> <font size="20"><xliff:g id="unit" example="%">%</xliff:g></font></small></string> <!-- Title for force stop dialog [CHAR LIMIT=30] --> <string name="dialog_stop_title">Stop app?</string> <!-- Message body for force stop dialog [CHAR LIMIT=NONE] --> Loading src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java +10 −3 Original line number Diff line number Diff line Loading @@ -21,8 +21,10 @@ import android.app.Activity; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.icu.text.NumberFormat; import android.os.BatteryManager; import android.os.PowerManager; import android.text.TextUtils; import android.widget.TextView; import androidx.annotation.VisibleForTesting; Loading Loading @@ -83,7 +85,7 @@ public class BatteryHeaderPreferenceController extends BasePreferenceController @Override public void displayPreference(PreferenceScreen screen) { super.displayPreference(screen); mBatteryLayoutPref = (LayoutPreference) screen.findPreference(getPreferenceKey()); mBatteryLayoutPref = screen.findPreference(getPreferenceKey()); mBatteryMeterView = mBatteryLayoutPref .findViewById(R.id.battery_header_icon); mBatteryPercentText = mBatteryLayoutPref.findViewById(R.id.battery_percent); Loading @@ -107,7 +109,7 @@ public class BatteryHeaderPreferenceController extends BasePreferenceController } public void updateHeaderPreference(BatteryInfo info) { mBatteryPercentText.setText(Utils.formatPercentage(info.batteryLevel)); mBatteryPercentText.setText(formatBatteryPercentageText(info.batteryLevel)); if (info.remainingLabel == null) { mSummary1.setText(info.statusLabel); } else { Loading @@ -133,6 +135,11 @@ public class BatteryHeaderPreferenceController extends BasePreferenceController mBatteryMeterView.setBatteryLevel(batteryLevel); mBatteryMeterView.setCharging(!discharging); mBatteryMeterView.setPowerSave(mPowerManager.isPowerSaveMode()); mBatteryPercentText.setText(Utils.formatPercentage(batteryLevel)); mBatteryPercentText.setText(formatBatteryPercentageText(batteryLevel)); } private CharSequence formatBatteryPercentageText(int batteryLevel) { return TextUtils.expandTemplate(mContext.getText(R.string.battery_header_title_alternate), NumberFormat.getIntegerInstance().format(batteryLevel)); } } tests/robotests/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceControllerTest.java +4 −3 Original line number Diff line number Diff line Loading @@ -140,7 +140,8 @@ public class BatteryHeaderPreferenceControllerTest { assertThat(((BatteryMeterView) mBatteryLayoutPref.findViewById( R.id.battery_header_icon)).getBatteryLevel()).isEqualTo(BATTERY_LEVEL); assertThat(((TextView) mBatteryLayoutPref.findViewById(R.id.battery_percent)).getText()) assertThat(((TextView) mBatteryLayoutPref.findViewById(R.id.battery_percent)) .getText().toString()) .isEqualTo("60 %"); } Loading Loading @@ -195,7 +196,7 @@ public class BatteryHeaderPreferenceControllerTest { assertThat(mBatteryMeterView.getBatteryLevel()).isEqualTo(BATTERY_LEVEL); assertThat(mBatteryMeterView.getCharging()).isTrue(); assertThat(mBatteryPercentText.getText()).isEqualTo("60%"); assertThat(mBatteryPercentText.getText().toString()).isEqualTo("60 %"); assertThat(mSummary.getText()).isEqualTo(BATTERY_STATUS); assertThat(mSummary2.getText()).isEqualTo(BATTERY_STATUS); } Loading Loading
res/layout/battery_header.xml +8 −10 Original line number Diff line number Diff line Loading @@ -22,15 +22,12 @@ android:layout_height="match_parent" android:layout_gravity="center" android:orientation="horizontal" android:paddingTop="24dp" android:paddingBottom="24dp" style="@style/EntityHeader"> <LinearLayout android:layout_width="0dp" android:layout_width="170dp" android:layout_height="wrap_content" android:layout_weight="1" android:layout_marginStart="56dp" android:layout_marginStart="72dp" android:layout_marginEnd="8dp" android:orientation="vertical"> Loading @@ -39,8 +36,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="12dp" android:fontFamily="@*android:string/config_headlineFontFamily" android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Display1"/> android:textAppearance="@style/TextAppearance.EntityHeaderTitle" android:textSize="36sp" /> <TextView android:id="@+id/summary1" Loading @@ -49,19 +46,20 @@ android:layout_marginTop="8dp" android:minLines="2" android:textAppearance="@android:style/TextAppearance.DeviceDefault.Small"/> android:textColor="?android:attr/textColorPrimary"/> <TextView android:id="@+id/summary2" android:layout_width="match_parent" android:layout_height="wrap_content" android:textAppearance="@android:style/TextAppearance.DeviceDefault.Small"/> android:textColor="?android:attr/textColorPrimary"/> </LinearLayout> <com.android.settings.fuelgauge.BatteryMeterView android:id="@+id/battery_header_icon" android:layout_width="@dimen/battery_meter_width" android:layout_width="match_parent" android:layout_height="@dimen/battery_meter_height" android:layout_marginEnd="16dp"/> android:layout_gravity="center"/> </LinearLayout> No newline at end of file
res/values/strings.xml +3 −0 Original line number Diff line number Diff line Loading @@ -5226,6 +5226,9 @@ <item quantity="other">%1$d apps restricted</item> </plurals> <!-- Title to display the battery percentage. [CHAR LIMIT=24] --> <string name="battery_header_title_alternate"><xliff:g id="number" example="88">^1</xliff:g><small> <font size="20"><xliff:g id="unit" example="%">%</xliff:g></font></small></string> <!-- Title for force stop dialog [CHAR LIMIT=30] --> <string name="dialog_stop_title">Stop app?</string> <!-- Message body for force stop dialog [CHAR LIMIT=NONE] --> Loading
src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java +10 −3 Original line number Diff line number Diff line Loading @@ -21,8 +21,10 @@ import android.app.Activity; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.icu.text.NumberFormat; import android.os.BatteryManager; import android.os.PowerManager; import android.text.TextUtils; import android.widget.TextView; import androidx.annotation.VisibleForTesting; Loading Loading @@ -83,7 +85,7 @@ public class BatteryHeaderPreferenceController extends BasePreferenceController @Override public void displayPreference(PreferenceScreen screen) { super.displayPreference(screen); mBatteryLayoutPref = (LayoutPreference) screen.findPreference(getPreferenceKey()); mBatteryLayoutPref = screen.findPreference(getPreferenceKey()); mBatteryMeterView = mBatteryLayoutPref .findViewById(R.id.battery_header_icon); mBatteryPercentText = mBatteryLayoutPref.findViewById(R.id.battery_percent); Loading @@ -107,7 +109,7 @@ public class BatteryHeaderPreferenceController extends BasePreferenceController } public void updateHeaderPreference(BatteryInfo info) { mBatteryPercentText.setText(Utils.formatPercentage(info.batteryLevel)); mBatteryPercentText.setText(formatBatteryPercentageText(info.batteryLevel)); if (info.remainingLabel == null) { mSummary1.setText(info.statusLabel); } else { Loading @@ -133,6 +135,11 @@ public class BatteryHeaderPreferenceController extends BasePreferenceController mBatteryMeterView.setBatteryLevel(batteryLevel); mBatteryMeterView.setCharging(!discharging); mBatteryMeterView.setPowerSave(mPowerManager.isPowerSaveMode()); mBatteryPercentText.setText(Utils.formatPercentage(batteryLevel)); mBatteryPercentText.setText(formatBatteryPercentageText(batteryLevel)); } private CharSequence formatBatteryPercentageText(int batteryLevel) { return TextUtils.expandTemplate(mContext.getText(R.string.battery_header_title_alternate), NumberFormat.getIntegerInstance().format(batteryLevel)); } }
tests/robotests/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceControllerTest.java +4 −3 Original line number Diff line number Diff line Loading @@ -140,7 +140,8 @@ public class BatteryHeaderPreferenceControllerTest { assertThat(((BatteryMeterView) mBatteryLayoutPref.findViewById( R.id.battery_header_icon)).getBatteryLevel()).isEqualTo(BATTERY_LEVEL); assertThat(((TextView) mBatteryLayoutPref.findViewById(R.id.battery_percent)).getText()) assertThat(((TextView) mBatteryLayoutPref.findViewById(R.id.battery_percent)) .getText().toString()) .isEqualTo("60 %"); } Loading Loading @@ -195,7 +196,7 @@ public class BatteryHeaderPreferenceControllerTest { assertThat(mBatteryMeterView.getBatteryLevel()).isEqualTo(BATTERY_LEVEL); assertThat(mBatteryMeterView.getCharging()).isTrue(); assertThat(mBatteryPercentText.getText()).isEqualTo("60%"); assertThat(mBatteryPercentText.getText().toString()).isEqualTo("60 %"); assertThat(mSummary.getText()).isEqualTo(BATTERY_STATUS); assertThat(mSummary2.getText()).isEqualTo(BATTERY_STATUS); } Loading