Shows LGAAYL when launching Location Settings
- Partial fix of b/10897468
Change-Id: Iec96909b87e71869c5a020ce848c6cf4fada3616
diff --git a/src/com/android/settings/accounts/ManageAccountsSettings.java b/src/com/android/settings/accounts/ManageAccountsSettings.java
index a7f0f30..184f680 100644
--- a/src/com/android/settings/accounts/ManageAccountsSettings.java
+++ b/src/com/android/settings/accounts/ManageAccountsSettings.java
@@ -55,11 +55,15 @@
/** Manages settings for Google Account. */
public class ManageAccountsSettings extends AccountPreferenceBase
implements OnAccountsUpdateListener {
-
private static final String ACCOUNT_KEY = "account"; // to pass to auth settings
public static final String KEY_ACCOUNT_TYPE = "account_type";
public static final String KEY_ACCOUNT_LABEL = "account_label";
+ // Action name for the broadcast intent when the Google account preferences page is launching
+ // the location settings.
+ private static final String LAUNCHING_LOCATION_SETTINGS =
+ "com.android.settings.accounts.LAUNCHING_LOCATION_SETTINGS";
+
private static final int MENU_SYNC_NOW_ID = Menu.FIRST;
private static final int MENU_SYNC_CANCEL_ID = Menu.FIRST + 1;
@@ -366,6 +370,13 @@
public boolean onPreferenceClick(Preference preference) {
((PreferenceActivity) getActivity()).startPreferencePanel(
mClass, null, mTitleRes, null, null, 0);
+ // Hack: announce that the Google account preferences page is launching the location
+ // settings
+ if (mClass.equals(LocationSettings.class.getName())) {
+ Intent intent = new Intent(LAUNCHING_LOCATION_SETTINGS);
+ getActivity().sendBroadcast(
+ intent, android.Manifest.permission.WRITE_SECURE_SETTINGS);
+ }
return true;
}
}