Supress Location button when coming from Location
Change-Id: Ie1f1aed17206530ec7c8a1cde43a4380b7232823
This commit is contained in:
@@ -175,7 +175,8 @@ public class BatteryStatsHelper {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void startBatteryDetailPage(PreferenceActivity caller, BatterySipper sipper) {
|
public void startBatteryDetailPage(
|
||||||
|
PreferenceActivity caller, BatterySipper sipper, boolean showLocationButton) {
|
||||||
// Initialize mStats if necessary.
|
// Initialize mStats if necessary.
|
||||||
getStats();
|
getStats();
|
||||||
|
|
||||||
@@ -193,6 +194,7 @@ public class BatteryStatsHelper {
|
|||||||
args.putInt(PowerUsageDetail.EXTRA_UID, sipper.uidObj.getUid());
|
args.putInt(PowerUsageDetail.EXTRA_UID, sipper.uidObj.getUid());
|
||||||
}
|
}
|
||||||
args.putSerializable(PowerUsageDetail.EXTRA_DRAIN_TYPE, sipper.drainType);
|
args.putSerializable(PowerUsageDetail.EXTRA_DRAIN_TYPE, sipper.drainType);
|
||||||
|
args.putBoolean(PowerUsageDetail.EXTRA_SHOW_LOCATION_BUTTON, showLocationButton);
|
||||||
|
|
||||||
int[] types;
|
int[] types;
|
||||||
double[] values;
|
double[] values;
|
||||||
|
@@ -107,6 +107,7 @@ public class PowerUsageDetail extends Fragment implements Button.OnClickListener
|
|||||||
public static final String EXTRA_ICON_PACKAGE = "iconPackage"; // String
|
public static final String EXTRA_ICON_PACKAGE = "iconPackage"; // String
|
||||||
public static final String EXTRA_NO_COVERAGE = "noCoverage";
|
public static final String EXTRA_NO_COVERAGE = "noCoverage";
|
||||||
public static final String EXTRA_ICON_ID = "iconId"; // Int
|
public static final String EXTRA_ICON_ID = "iconId"; // Int
|
||||||
|
public static final String EXTRA_SHOW_LOCATION_BUTTON = "showLocationButton"; // Boolean
|
||||||
|
|
||||||
private PackageManager mPm;
|
private PackageManager mPm;
|
||||||
private DevicePolicyManager mDpm;
|
private DevicePolicyManager mDpm;
|
||||||
@@ -128,6 +129,7 @@ public class PowerUsageDetail extends Fragment implements Button.OnClickListener
|
|||||||
private double mNoCoverage; // Percentage of time that there was no coverage
|
private double mNoCoverage; // Percentage of time that there was no coverage
|
||||||
|
|
||||||
private boolean mUsesGps;
|
private boolean mUsesGps;
|
||||||
|
private boolean mShowLocationButton;
|
||||||
|
|
||||||
private static final String TAG = "PowerUsageDetail";
|
private static final String TAG = "PowerUsageDetail";
|
||||||
private String[] mPackages;
|
private String[] mPackages;
|
||||||
@@ -176,6 +178,7 @@ public class PowerUsageDetail extends Fragment implements Button.OnClickListener
|
|||||||
mNoCoverage = args.getDouble(EXTRA_NO_COVERAGE, 0);
|
mNoCoverage = args.getDouble(EXTRA_NO_COVERAGE, 0);
|
||||||
String iconPackage = args.getString(EXTRA_ICON_PACKAGE);
|
String iconPackage = args.getString(EXTRA_ICON_PACKAGE);
|
||||||
int iconId = args.getInt(EXTRA_ICON_ID, 0);
|
int iconId = args.getInt(EXTRA_ICON_ID, 0);
|
||||||
|
mShowLocationButton = args.getBoolean(EXTRA_SHOW_LOCATION_BUTTON);
|
||||||
if (!TextUtils.isEmpty(iconPackage)) {
|
if (!TextUtils.isEmpty(iconPackage)) {
|
||||||
try {
|
try {
|
||||||
final PackageManager pm = getActivity().getPackageManager();
|
final PackageManager pm = getActivity().getPackageManager();
|
||||||
@@ -362,7 +365,9 @@ public class PowerUsageDetail extends Fragment implements Button.OnClickListener
|
|||||||
// If the application has a settings screen, jump to that
|
// If the application has a settings screen, jump to that
|
||||||
// TODO:
|
// TODO:
|
||||||
}
|
}
|
||||||
if (mUsesGps) {
|
// If power usage detail page is launched from location page, suppress "Location"
|
||||||
|
// button to prevent circular loops.
|
||||||
|
if (mUsesGps && mShowLocationButton) {
|
||||||
addControl(R.string.location_settings_title,
|
addControl(R.string.location_settings_title,
|
||||||
R.string.battery_sugg_apps_gps, ACTION_LOCATION_SETTINGS);
|
R.string.battery_sugg_apps_gps, ACTION_LOCATION_SETTINGS);
|
||||||
removeHeader = false;
|
removeHeader = false;
|
||||||
|
@@ -144,7 +144,7 @@ public class PowerUsageSummary extends PreferenceFragment {
|
|||||||
}
|
}
|
||||||
PowerGaugePreference pgp = (PowerGaugePreference) preference;
|
PowerGaugePreference pgp = (PowerGaugePreference) preference;
|
||||||
BatterySipper sipper = pgp.getInfo();
|
BatterySipper sipper = pgp.getInfo();
|
||||||
mStatsHelper.startBatteryDetailPage((PreferenceActivity) getActivity(), sipper);
|
mStatsHelper.startBatteryDetailPage((PreferenceActivity) getActivity(), sipper, true);
|
||||||
return super.onPreferenceTreeClick(preferenceScreen, preference);
|
return super.onPreferenceTreeClick(preferenceScreen, preference);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -69,7 +69,7 @@ public class RecentLocationApps {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onPreferenceClick(Preference preference) {
|
public boolean onPreferenceClick(Preference preference) {
|
||||||
mStatsHelper.startBatteryDetailPage(mActivity, mSipper);
|
mStatsHelper.startBatteryDetailPage(mActivity, mSipper, false);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user