summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authorAxesh R. Ajmera <aajmera@codeaurora.org>2015-07-13 17:10:56 -0700
committerjrizzoli <joey@cyanogenmoditalia.it>2015-08-28 13:15:46 +0200
commit1ad7c5753de76e1cfaf78289e4f2b05e12c77855 (patch)
treec9c9a6cd9c1a9b730b629aba9d1644d0eef83853 /src/com
parent07b2fd9ac55a9f2096423320f5c0e7fdb9b562d8 (diff)
downloadandroid_packages_apps_Gello-1ad7c5753de76e1cfaf78289e4f2b05e12c77855.tar.gz
android_packages_apps_Gello-1ad7c5753de76e1cfaf78289e4f2b05e12c77855.tar.bz2
android_packages_apps_Gello-1ad7c5753de76e1cfaf78289e4f2b05e12c77855.zip
Multiple fixes for permissions of site specific setting
- web refiner permission for site specific setting - fix NPE when fetching origins - fix clearing of storage data Change-Id: I366b7292338ee417dda8b5fb6a9548dc9108ef5a
Diffstat (limited to 'src/com')
-rw-r--r--src/com/android/browser/BrowserSettings.java3
-rw-r--r--src/com/android/browser/preferences/SiteSpecificPreferencesFragment.java3
-rw-r--r--src/com/android/browser/preferences/WebsiteSettingsFragment.java8
3 files changed, 12 insertions, 2 deletions
diff --git a/src/com/android/browser/BrowserSettings.java b/src/com/android/browser/BrowserSettings.java
index 60f13d50..9de584d5 100644
--- a/src/com/android/browser/BrowserSettings.java
+++ b/src/com/android/browser/BrowserSettings.java
@@ -155,6 +155,9 @@ public class BrowserSettings implements OnSharedPreferenceChangeListener,
for (String origin : origins) {
PermissionsServiceFactory.PermissionsService.OriginInfo
info = value.getOriginInfo(origin);
+ if (info == null) {
+ continue;
+ }
int perm = info.getPermission(
PermissionsServiceFactory.PermissionType.WEBREFINER);
if (perm == PermissionsServiceFactory.Permission.ALLOW) {
diff --git a/src/com/android/browser/preferences/SiteSpecificPreferencesFragment.java b/src/com/android/browser/preferences/SiteSpecificPreferencesFragment.java
index a67d96d7..7ee84b2d 100644
--- a/src/com/android/browser/preferences/SiteSpecificPreferencesFragment.java
+++ b/src/com/android/browser/preferences/SiteSpecificPreferencesFragment.java
@@ -706,8 +706,9 @@ public class SiteSpecificPreferencesFragment extends SWEPreferenceFragment
origins[0] = mOriginInfo.getOrigin();
refiner.setPermissionForOrigins(origins, !disable);
}
+ // Distracting contents and web refiner complimentary of each other
updateTwoStatePreference(pref,
- PermissionsServiceFactory.PermissionType.WEBREFINER, (boolean)objValue);
+ PermissionsServiceFactory.PermissionType.WEBREFINER, !(boolean)objValue);
} else if (pref.getKey().toString().equalsIgnoreCase("popup_windows")) {
updateTwoStatePreference(pref,
PermissionsServiceFactory.PermissionType.POPUP, (boolean)objValue);
diff --git a/src/com/android/browser/preferences/WebsiteSettingsFragment.java b/src/com/android/browser/preferences/WebsiteSettingsFragment.java
index f447ced9..3f0215bc 100644
--- a/src/com/android/browser/preferences/WebsiteSettingsFragment.java
+++ b/src/com/android/browser/preferences/WebsiteSettingsFragment.java
@@ -166,6 +166,13 @@ public class WebsiteSettingsFragment extends ListFragment implements OnClickList
Set<String> origins = mPermServ.getOrigins();
String[] originArray = origins.toArray(new String[origins.size()]);
+ for (String origin : originArray) {
+ PermissionsServiceFactory.PermissionsService.OriginInfo info =
+ mPermServ.getOriginInfo(origin);
+ if (info != null) {
+ info.clearAllStoredData();
+ }
+ }
// purge the permissionservice since its not needed
mPermServ.purge();
mPermServ = null;
@@ -313,7 +320,6 @@ public class WebsiteSettingsFragment extends ListFragment implements OnClickList
new AlertDialog.OnClickListener() {
public void onClick(DialogInterface dlg, int which) {
mAdapter.deleteAllOrigins();
- WebStorage.getInstance().deleteAllData();
if (GeolocationPermissions.isIncognitoCreated()) {
GeolocationPermissions.getIncognitoInstance().clearAll();
}