summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/extension_preference_api.cc
diff options
context:
space:
mode:
authormkwst@chromium.org <mkwst@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-26 05:41:21 +0000
committermkwst@chromium.org <mkwst@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-26 05:41:21 +0000
commitfbc66010f8d955ca4f20ebe04e60c55b0f54292e (patch)
tree8d3b29318fbaf8fc3940a720c31a9b633d5c948e /chrome/browser/extensions/extension_preference_api.cc
parentf116ba3eab9ef41ca39306a6608d027a6680a7af (diff)
downloadchromium_src-fbc66010f8d955ca4f20ebe04e60c55b0f54292e.zip
chromium_src-fbc66010f8d955ca4f20ebe04e60c55b0f54292e.tar.gz
chromium_src-fbc66010f8d955ca4f20ebe04e60c55b0f54292e.tar.bz2
Expose privacy-relevant preferences in Chrome's extension APIs.
Adds a `privacy` permission to hold toggles for features that a) send information to external services (google or otherwise), b) send information to first-party websites, and c) effect Chrome's handling of the network in general. (Metrics are still a TODO). * privacy * network * networkPredictionEnabled (ChromeSetting) * services * alternateErrorPagesEnabled (ChromeSetting) * autofillEnabled (ChromeSetting) * instantEnabled (ChromeSetting) * safeBrowsingEnabled (ChromeSetting) * searchSuggestEnabled (ChromeSetting) * translateEnabled (ChromeSetting) * websites * blockThirdPartyCookies (ChromeSetting) * hyperlinkAuditingEnabled (ChromeSetting) * referrersEnabled (ChromeSetting) BUG=88030,55059,54853 TEST=browser_tests Review URL: http://codereview.chromium.org/7298005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98396 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/extension_preference_api.cc')
-rw-r--r--chrome/browser/extensions/extension_preference_api.cc47
1 files changed, 40 insertions, 7 deletions
diff --git a/chrome/browser/extensions/extension_preference_api.cc b/chrome/browser/extensions/extension_preference_api.cc
index b0ada5f..90adc09 100644
--- a/chrome/browser/extensions/extension_preference_api.cc
+++ b/chrome/browser/extensions/extension_preference_api.cc
@@ -45,22 +45,55 @@ const char kValue[] = "value";
const char kOnPrefChangeFormat[] = "types.ChromeSetting.%s.onChange";
PrefMappingEntry kPrefMapping[] = {
- { "thirdPartyCookiesAllowed",
- prefs::kBlockThirdPartyCookies,
- ExtensionAPIPermission::kContentSettings
+ { "alternateErrorPagesEnabled",
+ prefs::kAlternateErrorPagesEnabled,
+ ExtensionAPIPermission::kExperimental
},
- { "referrersEnabled",
- prefs::kEnableReferrers,
- ExtensionAPIPermission::kContentSettings
+ { "autofillEnabled",
+ prefs::kAutofillEnabled,
+ ExtensionAPIPermission::kExperimental
},
{ "hyperlinkAuditingEnabled",
prefs::kEnableHyperlinkAuditing,
- ExtensionAPIPermission::kContentSettings
+ ExtensionAPIPermission::kExperimental
+ },
+ { "instantEnabled",
+ prefs::kInstantEnabled,
+ ExtensionAPIPermission::kExperimental
+ },
+ // TODO(mkwst): come back to this once the UMA discussion has been resolved.
+ // { "metricsReportingEnabled",
+ // prefs::kMetricsReportingEnabled,
+ // ExtensionAPIPermission::kMetrics
+ // },
+ { "networkPredictionEnabled",
+ prefs::kNetworkPredictionEnabled,
+ ExtensionAPIPermission::kExperimental
},
{ "proxy",
prefs::kProxy,
ExtensionAPIPermission::kProxy
},
+ { "referrersEnabled",
+ prefs::kEnableReferrers,
+ ExtensionAPIPermission::kExperimental
+ },
+ { "searchSuggestEnabled",
+ prefs::kSearchSuggestEnabled,
+ ExtensionAPIPermission::kExperimental
+ },
+ { "safeBrowsingEnabled",
+ prefs::kSafeBrowsingEnabled,
+ ExtensionAPIPermission::kExperimental
+ },
+ { "thirdPartyCookiesAllowed",
+ prefs::kBlockThirdPartyCookies,
+ ExtensionAPIPermission::kExperimental
+ },
+ { "translationServiceEnabled",
+ prefs::kEnableTranslate,
+ ExtensionAPIPermission::kExperimental
+ }
};
class IdentityPrefTransformer : public PrefTransformerInterface {