diff options
author | Maggie Benthall <mbenthall@google.com> | 2013-02-22 15:10:35 -0500 |
---|---|---|
committer | Maggie Benthall <mbenthall@google.com> | 2013-02-25 16:49:32 -0500 |
commit | ea6260d887a7065d65d94be58c05903b3d1fc359 (patch) | |
tree | da1ed50e4e774cdd25f52fe27ff4cfb3540fa593 /src/com/android/settings/widget | |
parent | 1022e801bac5bbb17c6aeccf1384a5a21fdeb836 (diff) | |
download | packages_apps_Settings-ea6260d887a7065d65d94be58c05903b3d1fc359.zip packages_apps_Settings-ea6260d887a7065d65d94be58c05903b3d1fc359.tar.gz packages_apps_Settings-ea6260d887a7065d65d94be58c05903b3d1fc359.tar.bz2 |
Respect user restriction against toggling location sharing settings.
Change-Id: I1e629129fc9b3b224d4f4402b56d904df9edc43f
Diffstat (limited to 'src/com/android/settings/widget')
-rw-r--r-- | src/com/android/settings/widget/SettingsAppWidgetProvider.java | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/com/android/settings/widget/SettingsAppWidgetProvider.java b/src/com/android/settings/widget/SettingsAppWidgetProvider.java index 75a83cc..ac9df9f 100644 --- a/src/com/android/settings/widget/SettingsAppWidgetProvider.java +++ b/src/com/android/settings/widget/SettingsAppWidgetProvider.java @@ -35,6 +35,7 @@ import android.os.IPowerManager; import android.os.PowerManager; import android.os.RemoteException; import android.os.ServiceManager; +import android.os.UserManager; import android.provider.Settings; import android.util.Log; import android.widget.RemoteViews; @@ -538,11 +539,18 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { new AsyncTask<Void, Void, Boolean>() { @Override protected Boolean doInBackground(Void... args) { - Settings.Secure.setLocationProviderEnabled( - resolver, - LocationManager.GPS_PROVIDER, - desiredState); - return desiredState; + final UserManager um = + (UserManager) context.getSystemService(Context.USER_SERVICE); + if (um.isLocationSharingToggleAllowed()) { + Settings.Secure.setLocationProviderEnabled( + resolver, + LocationManager.GPS_PROVIDER, + desiredState); + return desiredState; + } + return Settings.Secure.isLocationProviderEnabled( + resolver, + LocationManager.GPS_PROVIDER); } @Override |