Index: chrome/browser/extensions/api/preference/preference_api.cc |
diff --git a/chrome/browser/extensions/api/preference/preference_api.cc b/chrome/browser/extensions/api/preference/preference_api.cc |
index f1023511a38a7325bdc8ae0d85129f62ffbd4166..25aad27231ed9b2103a09dcc4b73c551d2df0d9c 100644 |
--- a/chrome/browser/extensions/api/preference/preference_api.cc |
+++ b/chrome/browser/extensions/api/preference/preference_api.cc |
@@ -23,6 +23,7 @@ |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/common/pref_names.h" |
#include "components/translate/core/common/translate_pref_names.h" |
+#include "content/public/browser/browser_accessibility_state.h" |
#include "content/public/browser/notification_details.h" |
#include "content/public/browser/notification_source.h" |
#include "extensions/browser/extension_pref_value_map.h" |
@@ -69,56 +70,92 @@ const char kConversionErrorMessage[] = |
"properly."; |
PrefMappingEntry kPrefMapping[] = { |
- {"alternateErrorPagesEnabled", prefs::kAlternateErrorPagesEnabled, |
- APIPermission::kPrivacy, APIPermission::kPrivacy}, |
- {"autofillEnabled", autofill::prefs::kAutofillEnabled, |
- APIPermission::kPrivacy, APIPermission::kPrivacy}, |
- {"hyperlinkAuditingEnabled", prefs::kEnableHyperlinkAuditing, |
- APIPermission::kPrivacy, APIPermission::kPrivacy}, |
- {"networkPredictionEnabled", prefs::kNetworkPredictionOptions, |
- APIPermission::kPrivacy, APIPermission::kPrivacy}, |
+ {"alternateErrorPagesEnabled", |
+ prefs::kAlternateErrorPagesEnabled, |
+ APIPermission::kPrivacy, |
+ APIPermission::kPrivacy}, |
+ {"autofillEnabled", |
+ autofill::prefs::kAutofillEnabled, |
+ APIPermission::kPrivacy, |
+ APIPermission::kPrivacy}, |
+ {"hyperlinkAuditingEnabled", |
+ prefs::kEnableHyperlinkAuditing, |
+ APIPermission::kPrivacy, |
+ APIPermission::kPrivacy}, |
+ {"networkPredictionEnabled", |
+ prefs::kNetworkPredictionOptions, |
+ APIPermission::kPrivacy, |
+ APIPermission::kPrivacy}, |
{"passwordSavingEnabled", |
password_manager::prefs::kPasswordManagerSavingEnabled, |
- APIPermission::kPrivacy, APIPermission::kPrivacy}, |
- {"protectedContentEnabled", prefs::kEnableDRM, APIPermission::kPrivacy, |
+ APIPermission::kPrivacy, |
+ APIPermission::kPrivacy}, |
+ {"protectedContentEnabled", |
+ prefs::kEnableDRM, |
+ APIPermission::kPrivacy, |
APIPermission::kPrivacy}, |
{"proxy", prefs::kProxy, APIPermission::kProxy, APIPermission::kProxy}, |
- {"referrersEnabled", prefs::kEnableReferrers, APIPermission::kPrivacy, |
+ {"referrersEnabled", |
+ prefs::kEnableReferrers, |
+ APIPermission::kPrivacy, |
+ APIPermission::kPrivacy}, |
+ {"safeBrowsingEnabled", |
+ prefs::kSafeBrowsingEnabled, |
+ APIPermission::kPrivacy, |
+ APIPermission::kPrivacy}, |
+ {"searchSuggestEnabled", |
+ prefs::kSearchSuggestEnabled, |
+ APIPermission::kPrivacy, |
+ APIPermission::kPrivacy}, |
+ {"spellingServiceEnabled", |
+ prefs::kSpellCheckUseSpellingService, |
+ APIPermission::kPrivacy, |
+ APIPermission::kPrivacy}, |
+ {"thirdPartyCookiesAllowed", |
+ prefs::kBlockThirdPartyCookies, |
+ APIPermission::kPrivacy, |
+ APIPermission::kPrivacy}, |
+ {"translationServiceEnabled", |
+ prefs::kEnableTranslate, |
+ APIPermission::kPrivacy, |
APIPermission::kPrivacy}, |
- {"safeBrowsingEnabled", prefs::kSafeBrowsingEnabled, |
- APIPermission::kPrivacy, APIPermission::kPrivacy}, |
- {"searchSuggestEnabled", prefs::kSearchSuggestEnabled, |
- APIPermission::kPrivacy, APIPermission::kPrivacy}, |
- {"spellingServiceEnabled", prefs::kSpellCheckUseSpellingService, |
- APIPermission::kPrivacy, APIPermission::kPrivacy}, |
- {"thirdPartyCookiesAllowed", prefs::kBlockThirdPartyCookies, |
- APIPermission::kPrivacy, APIPermission::kPrivacy}, |
- {"translationServiceEnabled", prefs::kEnableTranslate, |
- APIPermission::kPrivacy, APIPermission::kPrivacy}, |
#if defined(OS_CHROMEOS) |
- {"autoclick", prefs::kAccessibilityAutoclickEnabled, |
+ {"autoclick", |
+ prefs::kAccessibilityAutoclickEnabled, |
APIPermission::kAccessibilityFeaturesRead, |
APIPermission::kAccessibilityFeaturesModify}, |
- {"highContrast", prefs::kAccessibilityHighContrastEnabled, |
+ {"highContrast", |
+ prefs::kAccessibilityHighContrastEnabled, |
APIPermission::kAccessibilityFeaturesRead, |
APIPermission::kAccessibilityFeaturesModify}, |
- {"largeCursor", prefs::kAccessibilityLargeCursorEnabled, |
+ {"largeCursor", |
+ prefs::kAccessibilityLargeCursorEnabled, |
APIPermission::kAccessibilityFeaturesRead, |
APIPermission::kAccessibilityFeaturesModify}, |
- {"screenMagnifier", prefs::kAccessibilityScreenMagnifierEnabled, |
+ {"screenMagnifier", |
+ prefs::kAccessibilityScreenMagnifierEnabled, |
APIPermission::kAccessibilityFeaturesRead, |
APIPermission::kAccessibilityFeaturesModify}, |
- {"spokenFeedback", prefs::kAccessibilitySpokenFeedbackEnabled, |
+ {"spokenFeedback", |
+ prefs::kAccessibilitySpokenFeedbackEnabled, |
APIPermission::kAccessibilityFeaturesRead, |
APIPermission::kAccessibilityFeaturesModify}, |
- {"stickyKeys", prefs::kAccessibilityStickyKeysEnabled, |
+ {"stickyKeys", |
+ prefs::kAccessibilityStickyKeysEnabled, |
APIPermission::kAccessibilityFeaturesRead, |
APIPermission::kAccessibilityFeaturesModify}, |
- {"virtualKeyboard", prefs::kAccessibilityVirtualKeyboardEnabled, |
+ {"virtualKeyboard", |
+ prefs::kAccessibilityVirtualKeyboardEnabled, |
APIPermission::kAccessibilityFeaturesRead, |
APIPermission::kAccessibilityFeaturesModify}, |
#endif |
-}; |
+ // accessibilityFeatures.animationPolicy is available for |
+ // all platforms but the others from accessibilityFeatures |
+ // is only avaiable for OS_CHROMEOS. |
+ {"animationPolicy", |
not at google - send to devlin
2014/12/12 17:27:58
Could you keep this in some sort of order? Up the
je_julie(Not used)
2014/12/14 05:46:26
Done.
|
+ prefs::kAnimationPolicy, |
+ APIPermission::kAccessibilityFeaturesRead, |
+ APIPermission::kAccessibilityFeaturesModify}}; |
class IdentityPrefTransformer : public PrefTransformerInterface { |
public: |
@@ -450,6 +487,16 @@ PreferenceAPI::PreferenceAPI(content::BrowserContext* context) |
EventRouter::Get(profile_)->RegisterObserver(this, event_name); |
} |
content_settings_store()->AddObserver(this); |
+ |
+ PrefService* prefs = profile_->GetPrefs(); |
+ pref_change_registrar_.Init(prefs); |
+ base::Closure animation_callback = |
+ base::Bind(&PreferenceAPI::UpdateAnimationPolicy, base::Unretained(this)); |
+ pref_change_registrar_.Add(prefs::kAnimationPolicy, animation_callback); |
+} |
+ |
+void PreferenceAPI::UpdateAnimationPolicy() { |
+ content::BrowserAccessibilityState::GetInstance()->UpdateAnimationPolicy(); |
not at google - send to devlin
2014/12/12 17:27:58
Seems like this code should be in PreferenceEventR
je_julie(Not used)
2014/12/14 05:46:26
I saw that PreferenceEventRouter is added with OnL
not at google - send to devlin
2014/12/15 03:44:07
Mm, ok, so the way I read this is actually that
-
|
} |
PreferenceAPI::~PreferenceAPI() { |