Merge "Wrap and carry clicked slot information data for restriction page" into sc-dev
diff --git a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
index 3ef7c45..2ebff34 100644
--- a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
+++ b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
@@ -113,6 +113,7 @@
private String mUsagePercent;
private String mPackageName;
private String mAppLabel;
+ private String mSlotInformation;
private int mUid;
private int mIconId;
private int mConsumedPower;
@@ -124,18 +125,22 @@
/** Launches battery details page for an individual battery consumer. */
public static void startBatteryDetailPage(
Activity caller, InstrumentedPreferenceFragment fragment,
- BatteryDiffEntry diffEntry, String usagePercent) {
+ BatteryDiffEntry diffEntry, String usagePercent,
+ boolean isValidToShowSummary, String slotInformation) {
final BatteryHistEntry histEntry = diffEntry.mBatteryHistEntry;
final LaunchBatteryDetailPageArgs launchArgs = new LaunchBatteryDetailPageArgs();
// configure the launch argument.
launchArgs.mUsagePercent = usagePercent;
launchArgs.mPackageName = diffEntry.getPackageName();
launchArgs.mAppLabel = diffEntry.getAppLabel();
+ launchArgs.mSlotInformation = slotInformation;
launchArgs.mUid = (int) histEntry.mUid;
launchArgs.mIconId = diffEntry.getAppIconId();
launchArgs.mConsumedPower = (int) diffEntry.mConsumePower;
- launchArgs.mForegroundTimeMs = diffEntry.mForegroundUsageTimeInMs;
- launchArgs.mBackgroundTimeMs = diffEntry.mBackgroundUsageTimeInMs;
+ launchArgs.mForegroundTimeMs =
+ isValidToShowSummary ? diffEntry.mForegroundUsageTimeInMs : 0;
+ launchArgs.mBackgroundTimeMs =
+ isValidToShowSummary ? diffEntry.mBackgroundUsageTimeInMs : 0;
launchArgs.mIsUserEntry = histEntry.isUserEntry();
startBatteryDetailPage(caller, fragment, launchArgs);
}
diff --git a/src/com/android/settings/fuelgauge/BatteryChartPreferenceController.java b/src/com/android/settings/fuelgauge/BatteryChartPreferenceController.java
index ff74477..99e6b0d 100644
--- a/src/com/android/settings/fuelgauge/BatteryChartPreferenceController.java
+++ b/src/com/android/settings/fuelgauge/BatteryChartPreferenceController.java
@@ -151,21 +151,22 @@
final PowerGaugePreference powerPref = (PowerGaugePreference) preference;
final BatteryDiffEntry diffEntry = powerPref.getBatteryDiffEntry();
final BatteryHistEntry histEntry = diffEntry.mBatteryHistEntry;
+ final String packageName = histEntry.mPackageName;
// Checks whether the package is installed or not.
boolean isValidPackage = true;
if (histEntry.isAppEntry()) {
if (mBatteryUtils == null) {
mBatteryUtils = BatteryUtils.getInstance(mPrefContext);
}
- isValidPackage = mBatteryUtils.getPackageUid(histEntry.mPackageName)
+ isValidPackage = mBatteryUtils.getPackageUid(packageName)
!= BatteryUtils.UID_NULL;
}
Log.d(TAG, String.format("handleClick() label=%s key=%s isValid:%b %s",
- diffEntry.getAppLabel(), histEntry.getKey(), isValidPackage,
- histEntry.mPackageName));
+ diffEntry.getAppLabel(), histEntry.getKey(), isValidPackage, packageName));
if (isValidPackage) {
AdvancedPowerUsageDetail.startBatteryDetailPage(
- mActivity, mFragment, diffEntry, powerPref.getPercent());
+ mActivity, mFragment, diffEntry, powerPref.getPercent(),
+ isValidToShowSummary(packageName), getSlotInformation());
return true;
}
return false;
@@ -267,8 +268,8 @@
|| (mTrapezoidIndex == trapezoidIndex && !isForce)) {
return false;
}
- Log.d(TAG, String.format("refreshUi: index=%d batteryIndexedMap.size=%d",
- mTrapezoidIndex, mBatteryIndexedMap.size()));
+ Log.d(TAG, String.format("refreshUi: index=%d size=%d isForce:%b",
+ trapezoidIndex, mBatteryIndexedMap.size(), isForce));
mTrapezoidIndex = trapezoidIndex;
mHandler.post(() -> {
@@ -471,11 +472,9 @@
final long backgroundUsageTimeInMs = entry.mBackgroundUsageTimeInMs;
final long totalUsageTimeInMs = foregroundUsageTimeInMs + backgroundUsageTimeInMs;
// Checks whether the package is allowed to show summary or not.
- for (CharSequence notAllowPackageName : mNotAllowShowSummaryPackages) {
- if (TextUtils.equals(entry.getPackageName(), notAllowPackageName)) {
- preference.setSummary(null);
- return;
- }
+ if (!isValidToShowSummary(entry.getPackageName())) {
+ preference.setSummary(null);
+ return;
}
String usageTimeSummary = null;
// Not shows summary for some system components without usage time.
@@ -515,6 +514,17 @@
return mPrefContext.getString(resourceId, timeSequence);
}
+ private boolean isValidToShowSummary(String packageName) {
+ if (mNotAllowShowSummaryPackages != null) {
+ for (CharSequence notAllowPackageName : mNotAllowShowSummaryPackages) {
+ if (TextUtils.equals(packageName, notAllowPackageName)) {
+ return false;
+ }
+ }
+ }
+ return true;
+ }
+
private static String utcToLocalTime(long[] timestamps) {
final StringBuilder builder = new StringBuilder();
for (int index = 0; index < timestamps.length; index++) {
diff --git a/src/com/android/settings/fuelgauge/ExpandDividerPreference.java b/src/com/android/settings/fuelgauge/ExpandDividerPreference.java
index 40536eb..b89f2d4 100644
--- a/src/com/android/settings/fuelgauge/ExpandDividerPreference.java
+++ b/src/com/android/settings/fuelgauge/ExpandDividerPreference.java
@@ -38,6 +38,7 @@
private OnExpandListener mOnExpandListener;
private boolean mIsExpanded = false;
+ private String mTitleContent = null;
/** A callback listener for expand state is changed by users. */
public interface OnExpandListener {
@@ -72,6 +73,7 @@
}
void setTitle(final String titleContent) {
+ mTitleContent = titleContent;
if (mTextView != null) {
mTextView.postDelayed(
() -> mTextView.setText(titleContent), 50);
@@ -95,5 +97,6 @@
if (mImageView != null) {
mImageView.setImageResource(iconId);
}
+ setTitle(mTitleContent);
}
}