Loading res/values/strings.xml +3 −0 Original line number Diff line number Diff line Loading @@ -6985,6 +6985,9 @@ <!-- Label for list to control apps that ignore battery saving restrictions [CHAR LIMIT=27]--> <string name="high_power_apps">Battery optimization</string> <!-- Label for menu to launch additional battery info --> <string name="additional_battery_info" translatable="false">Additional battery info</string> <!-- Filter for apps allowed to use a lot of power [CHAR LIMIT=25] --> <string name="high_power_filter_on">Not optimized</string> src/com/android/settings/fuelgauge/PowerUsageBase.java +3 −1 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.os.UserManager; import android.support.annotation.VisibleForTesting; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; Loading @@ -39,7 +40,8 @@ import com.android.settings.SettingsPreferenceFragment; public abstract class PowerUsageBase extends SettingsPreferenceFragment { // +1 to allow ordering for PowerUsageSummary. private static final int MENU_STATS_REFRESH = Menu.FIRST + 1; @VisibleForTesting static final int MENU_STATS_REFRESH = Menu.FIRST + 1; protected BatteryStatsHelper mStatsHelper; protected UserManager mUm; Loading src/com/android/settings/fuelgauge/PowerUsageDetail.java +5 −3 Original line number Diff line number Diff line Loading @@ -350,8 +350,10 @@ public class PowerUsageDetail extends PowerUsageBase implements Button.OnClickLi @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); mPm = getActivity().getPackageManager(); mDpm = (DevicePolicyManager)getActivity().getSystemService(Context.DEVICE_POLICY_SERVICE); Activity activity = getActivity(); mPm = activity.getPackageManager(); mDpm = (DevicePolicyManager) activity.getSystemService(Context.DEVICE_POLICY_SERVICE); addPreferencesFromResource(R.xml.power_usage_details); mDetailsParent = (PreferenceCategory) findPreference(KEY_DETAILS_PARENT); Loading @@ -360,7 +362,7 @@ public class PowerUsageDetail extends PowerUsageBase implements Button.OnClickLi mPackagesParent = (PreferenceCategory) findPreference(KEY_PACKAGES_PARENT); mPowerUsageFeatureProvider = FeatureFactory.getFactory(getActivity()).getPowerUsageFeatureProvider(); FeatureFactory.getFactory(activity).getPowerUsageFeatureProvider(activity); createDetails(); } Loading src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java +2 −0 Original line number Diff line number Diff line Loading @@ -24,4 +24,6 @@ public interface PowerUsageFeatureProvider { * Check whether location setting is enabled */ boolean isLocationSettingEnabled(String[] packages); boolean isAdditionalBatteryInfoEnabled(); } src/com/android/settings/fuelgauge/PowerUsageSummary.java +15 −3 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.os.Handler; import android.os.Message; import android.os.Process; import android.os.UserHandle; import android.support.annotation.VisibleForTesting; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceGroup; import android.text.TextUtils; Loading @@ -43,6 +44,7 @@ import com.android.settings.Settings.HighPowerApplicationsActivity; import com.android.settings.SettingsActivity; import com.android.settings.applications.ManageApplications; import com.android.settings.dashboard.SummaryLoader; import com.android.settings.overlay.FeatureFactory; import com.android.settingslib.BatteryInfo; import java.util.ArrayList; Loading @@ -67,7 +69,9 @@ public class PowerUsageSummary extends PowerUsageBase { private static final int MENU_STATS_TYPE = Menu.FIRST; private static final int MENU_HIGH_POWER_APPS = Menu.FIRST + 3; private static final int MENU_HELP = Menu.FIRST + 4; @VisibleForTesting static final int MENU_ADDITIONAL_BATTERY_INFO = Menu.FIRST + 4; private static final int MENU_HELP = Menu.FIRST + 5; private BatteryHistoryPreference mHistPref; private PreferenceGroup mAppListGroup; Loading Loading @@ -130,12 +134,20 @@ public class PowerUsageSummary extends PowerUsageBase { @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { if (DEBUG) { menu.add(0, MENU_STATS_TYPE, 0, R.string.menu_stats_total) menu.add(Menu.NONE, MENU_STATS_TYPE, Menu.NONE, R.string.menu_stats_total) .setIcon(com.android.internal.R.drawable.ic_menu_info_details) .setAlphabeticShortcut('t'); } menu.add(0, MENU_HIGH_POWER_APPS, 0, R.string.high_power_apps); menu.add(Menu.NONE, MENU_HIGH_POWER_APPS, Menu.NONE, R.string.high_power_apps); PowerUsageFeatureProvider powerUsageFeatureProvider = FeatureFactory.getFactory(getContext()).getPowerUsageFeatureProvider(getContext()); if (powerUsageFeatureProvider != null && powerUsageFeatureProvider.isAdditionalBatteryInfoEnabled()) { menu.add(Menu.NONE, MENU_ADDITIONAL_BATTERY_INFO, Menu.NONE, R.string.additional_battery_info); } super.onCreateOptionsMenu(menu, inflater); } Loading Loading
res/values/strings.xml +3 −0 Original line number Diff line number Diff line Loading @@ -6985,6 +6985,9 @@ <!-- Label for list to control apps that ignore battery saving restrictions [CHAR LIMIT=27]--> <string name="high_power_apps">Battery optimization</string> <!-- Label for menu to launch additional battery info --> <string name="additional_battery_info" translatable="false">Additional battery info</string> <!-- Filter for apps allowed to use a lot of power [CHAR LIMIT=25] --> <string name="high_power_filter_on">Not optimized</string>
src/com/android/settings/fuelgauge/PowerUsageBase.java +3 −1 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.os.UserManager; import android.support.annotation.VisibleForTesting; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; Loading @@ -39,7 +40,8 @@ import com.android.settings.SettingsPreferenceFragment; public abstract class PowerUsageBase extends SettingsPreferenceFragment { // +1 to allow ordering for PowerUsageSummary. private static final int MENU_STATS_REFRESH = Menu.FIRST + 1; @VisibleForTesting static final int MENU_STATS_REFRESH = Menu.FIRST + 1; protected BatteryStatsHelper mStatsHelper; protected UserManager mUm; Loading
src/com/android/settings/fuelgauge/PowerUsageDetail.java +5 −3 Original line number Diff line number Diff line Loading @@ -350,8 +350,10 @@ public class PowerUsageDetail extends PowerUsageBase implements Button.OnClickLi @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); mPm = getActivity().getPackageManager(); mDpm = (DevicePolicyManager)getActivity().getSystemService(Context.DEVICE_POLICY_SERVICE); Activity activity = getActivity(); mPm = activity.getPackageManager(); mDpm = (DevicePolicyManager) activity.getSystemService(Context.DEVICE_POLICY_SERVICE); addPreferencesFromResource(R.xml.power_usage_details); mDetailsParent = (PreferenceCategory) findPreference(KEY_DETAILS_PARENT); Loading @@ -360,7 +362,7 @@ public class PowerUsageDetail extends PowerUsageBase implements Button.OnClickLi mPackagesParent = (PreferenceCategory) findPreference(KEY_PACKAGES_PARENT); mPowerUsageFeatureProvider = FeatureFactory.getFactory(getActivity()).getPowerUsageFeatureProvider(); FeatureFactory.getFactory(activity).getPowerUsageFeatureProvider(activity); createDetails(); } Loading
src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java +2 −0 Original line number Diff line number Diff line Loading @@ -24,4 +24,6 @@ public interface PowerUsageFeatureProvider { * Check whether location setting is enabled */ boolean isLocationSettingEnabled(String[] packages); boolean isAdditionalBatteryInfoEnabled(); }
src/com/android/settings/fuelgauge/PowerUsageSummary.java +15 −3 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.os.Handler; import android.os.Message; import android.os.Process; import android.os.UserHandle; import android.support.annotation.VisibleForTesting; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceGroup; import android.text.TextUtils; Loading @@ -43,6 +44,7 @@ import com.android.settings.Settings.HighPowerApplicationsActivity; import com.android.settings.SettingsActivity; import com.android.settings.applications.ManageApplications; import com.android.settings.dashboard.SummaryLoader; import com.android.settings.overlay.FeatureFactory; import com.android.settingslib.BatteryInfo; import java.util.ArrayList; Loading @@ -67,7 +69,9 @@ public class PowerUsageSummary extends PowerUsageBase { private static final int MENU_STATS_TYPE = Menu.FIRST; private static final int MENU_HIGH_POWER_APPS = Menu.FIRST + 3; private static final int MENU_HELP = Menu.FIRST + 4; @VisibleForTesting static final int MENU_ADDITIONAL_BATTERY_INFO = Menu.FIRST + 4; private static final int MENU_HELP = Menu.FIRST + 5; private BatteryHistoryPreference mHistPref; private PreferenceGroup mAppListGroup; Loading Loading @@ -130,12 +134,20 @@ public class PowerUsageSummary extends PowerUsageBase { @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { if (DEBUG) { menu.add(0, MENU_STATS_TYPE, 0, R.string.menu_stats_total) menu.add(Menu.NONE, MENU_STATS_TYPE, Menu.NONE, R.string.menu_stats_total) .setIcon(com.android.internal.R.drawable.ic_menu_info_details) .setAlphabeticShortcut('t'); } menu.add(0, MENU_HIGH_POWER_APPS, 0, R.string.high_power_apps); menu.add(Menu.NONE, MENU_HIGH_POWER_APPS, Menu.NONE, R.string.high_power_apps); PowerUsageFeatureProvider powerUsageFeatureProvider = FeatureFactory.getFactory(getContext()).getPowerUsageFeatureProvider(getContext()); if (powerUsageFeatureProvider != null && powerUsageFeatureProvider.isAdditionalBatteryInfoEnabled()) { menu.add(Menu.NONE, MENU_ADDITIONAL_BATTERY_INFO, Menu.NONE, R.string.additional_battery_info); } super.onCreateOptionsMenu(menu, inflater); } Loading