Implements additional battery info menu behavior.
This is a manual cherry-pick of commit
6a43a06cac12494cd27e5b5cad4149a272d90038.
Bug: 33352540
Test: Updated existing tests.
Change-Id: I990029d2ea9032301362d614959259965b8ecb10
diff --git a/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java b/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java
index 7d63470..25743d1 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java
@@ -16,10 +16,20 @@
package com.android.settings.fuelgauge;
+import android.content.Intent;
+
/**
* Feature Provider used in power usage
*/
public interface PowerUsageFeatureProvider {
+ /**
+ * Check whether additional battery info feature is enabled.
+ */
boolean isAdditionalBatteryInfoEnabled();
+
+ /**
+ * Gets an {@link Intent} to show additional battery info.
+ */
+ Intent getAdditionalBatteryInfoIntent();
}
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
index 5f17860..be0a7cc 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
@@ -175,6 +175,11 @@
sa.startPreferencePanel(ManageApplications.class.getName(), args,
R.string.high_power_apps, null, null, 0);
return true;
+ case MENU_ADDITIONAL_BATTERY_INFO:
+ startActivity(FeatureFactory.getFactory(getContext())
+ .getPowerUsageFeatureProvider(getContext())
+ .getAdditionalBatteryInfoIntent());
+ return true;
default:
return super.onOptionsItemSelected(item);
}