This cl is a merge of the following 36 cls: ag/19250259 Duplicate BatteryChartPreferenceController and BatteryChartView into new files for better diff review purpose ag/19279660 Use Mockito 4.6.1 API for BatteryChartPreferenceControllerV2Test ag/19267975 Add class BatteryLevelData used to parcel the battery timestamps and levels. It behaves as an interface between UI and data. ag/19289086 Refactor BatteryChartView X-axis labels. Instead of only timestamps, also support any string[] labels. ag/19238586 Add interpolation for the history data since last full charge loaded from database. ag/19331746 Return raw history map in function getHistoryMapSinceLastFullCharge. ag/19308838 In BatteryChartViewV2, use levels.length-1 to replace mTrapezoidCount. So the chartview could show any number of slots as the given levels length-1. ag/19332266 Add class BatteryDiffData used to parcel battery usage data ag/19331467 Refactor Battery Chart View State Controll ag/19358207 Add DataProcessor to process raw history map for UI. ag/19332276 Add battery chart view model. ag/19394744 Update trapezoid validation in battery chart view. ag/19379730 Support daily and hourly battery chartview. ag/19428426 Improve X axis labels in battery chart (1) ag/19446215 Improve X axis labels in battery chart (2) ag/19394745 Add the async task to compute diff usage data and load labels and icons. ag/19447624 Support showing app usage list for two battery charts ag/19500907 Updates battery usage messages from last 24hr to last full charge. (Part1: V2 files) ag/19505324 Update the selected period message in battery chart ag/19500905 Updates battery usage messages from last 24hr to last full charge. (Part2: non-V2 files) ag/19510363 Update usage data for EBS app usage list and App usage detail from 24 hours to last full charge. ag/19523184 Update usage data for EBS app usage list and App usage detail from 24 hours to last full charge. ag/19534864 Add margin between battery daily and hourly charts ag/19491093 Always do interpolation for battery level data in daily chart. ag/19565630 Avoid NullPointerException when batteryLevelData is null. ag/19561239 Fix b/241872474 Battery usage page will crash when selecting the last hour chart bar, going to app detail page, and going back ag/19565633 Fix b/241885070: Unexpected texts moving when going back to battery usage page ag/19534850 New way to draw battery chart axis labels ag/19561240 Switch Battery Usage Chart from V1 to V2. ag/19561338 Switch Battery Usage Chart from V1 to V2. ag/19600174 Fix b/242254055 Battery usage initial screen improvements (long data loading time) ag/19600284 Fix b/242252080: Add padding space on the top of the battery chart ag/19647338 Consider usage map valid even if [all][all] is null. ag/19634227 Use new content uri everytime to avoid cache ag/19600177 Fix b/242009481: Refine the battery usage chart timestamp label rule ag/19647337 Fix b/242809981 Charge battery to 100% when battery usage page opened, the chart will refresh, but the app list isn't refreshed in that case. Test: manual Bug: 239491373 Bug: 236101166 Bug: 236101687 Fix: 236101166 Change-Id: I7de8d9dcee14627da10752534991f1ec9f616020 Merged-In: I9142c0d4e00dea3771777ba9aedeab07b635fa1a
64 lines
2.8 KiB
XML
64 lines
2.8 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- Copyright (C) 2021 The Android Open Source Project
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
xmlns:settings="http://schemas.android.com/apk/res-auto"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:paddingStart="?android:attr/listPreferredItemPaddingStart"
|
|
android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
|
|
android:orientation="vertical">
|
|
|
|
<TextView
|
|
android:id="@+id/chart_summary"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginVertical="16dp"
|
|
android:textAppearance="?android:attr/textAppearanceSmall"
|
|
android:textColor="?android:attr/textColorSecondary"
|
|
android:text="@string/battery_usage_chart_graph_hint_last_full_charge" />
|
|
|
|
<com.android.settings.fuelgauge.batteryusage.BatteryChartView
|
|
android:id="@+id/daily_battery_chart"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="170dp"
|
|
android:layout_marginBottom="16dp"
|
|
android:visibility="gone"
|
|
android:contentDescription="@string/battery_usage_chart"
|
|
android:textAppearance="?android:attr/textAppearanceSmall"
|
|
settings:textColor="?android:attr/textColorSecondary" />
|
|
|
|
<com.android.settings.fuelgauge.batteryusage.BatteryChartView
|
|
android:id="@+id/hourly_battery_chart"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="170dp"
|
|
android:layout_marginBottom="16dp"
|
|
android:visibility="visible"
|
|
android:contentDescription="@string/battery_usage_chart"
|
|
android:textAppearance="?android:attr/textAppearanceSmall"
|
|
settings:textColor="?android:attr/textColorSecondary" />
|
|
<!-- Use non-scalable text size from text_size_small_material -->
|
|
<TextView
|
|
android:id="@+id/companion_text"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:visibility="gone"
|
|
android:textAppearance="?android:attr/textAppearanceSmall"
|
|
android:textColor="?android:attr/textColorSecondary"
|
|
android:textSize="14dp" />
|
|
|
|
</LinearLayout>
|