diff options
Diffstat (limited to 'chrome/browser/ui/prefs')
-rw-r--r-- | chrome/browser/ui/prefs/prefs_tab_helper.cc | 26 | ||||
-rw-r--r-- | chrome/browser/ui/prefs/prefs_tab_helper.h | 2 |
2 files changed, 20 insertions, 8 deletions
diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/prefs/prefs_tab_helper.cc index 0079bf9..bc9b08a 100644 --- a/chrome/browser/ui/prefs/prefs_tab_helper.cc +++ b/chrome/browser/ui/prefs/prefs_tab_helper.cc @@ -49,23 +49,31 @@ namespace { // The list of prefs we want to observe. const char* kPrefsToObserve[] = { prefs::kDefaultCharset, + prefs::kDisable3DAPIs, + prefs::kEnableHyperlinkAuditing, prefs::kWebKitAllowDisplayingInsecureContent, prefs::kWebKitAllowRunningInsecureContent, prefs::kWebKitDefaultFixedFontSize, prefs::kWebKitDefaultFontSize, + prefs::kWebKitDomPasteEnabled, #if defined(OS_ANDROID) prefs::kWebKitFontScaleFactor, prefs::kWebKitForceEnableZoom, prefs::kWebKitPasswordEchoEnabled, #endif + prefs::kWebKitInspectorSettings, + prefs::kWebKitJavascriptCanOpenWindowsAutomatically, prefs::kWebKitJavascriptEnabled, prefs::kWebKitJavaEnabled, prefs::kWebKitLoadsImagesAutomatically, prefs::kWebKitMinimumFontSize, prefs::kWebKitMinimumLogicalFontSize, prefs::kWebKitPluginsEnabled, + prefs::kWebKitShrinksStandaloneImagesToFit, prefs::kWebkitTabsToLinks, - prefs::kWebKitUsesUniversalDetector + prefs::kWebKitTextAreasAreResizable, + prefs::kWebKitUsesUniversalDetector, + prefs::kWebKitWebSecurityEnabled, }; const int kPrefsToObserveLength = arraysize(kPrefsToObserve); @@ -112,6 +120,7 @@ ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_STANDARD) } } } +#endif // !defined(OS_ANDROID) // Registers |obs| to observe per-script font prefs under the path |map_name|. // On android, there's no exposed way to change these prefs, so we can save @@ -128,7 +137,6 @@ void RegisterFontFamilyMapObserver( registrar->Add(pref_name.c_str(), obs); } } -#endif // !defined(OS_ANDROID) #if defined(OS_WIN) // On Windows with antialising we want to use an alternate fixed font like @@ -326,12 +334,9 @@ PrefsTabHelper::PrefsTabHelper(WebContents* contents) &PrefsTabHelper::OnWebPrefChanged, base::Unretained(this)); for (int i = 0; i < kPrefsToObserveLength; ++i) { const char* pref_name = kPrefsToObserve[i]; - DCHECK(std::string(pref_name) == prefs::kDefaultCharset || - StartsWithASCII(pref_name, "webkit.webprefs.", true)); pref_change_registrar_.Add(pref_name, webkit_callback); } -#if !defined(OS_ANDROID) RegisterFontFamilyMapObserver(&pref_change_registrar_, prefs::kWebKitStandardFontFamilyMap, webkit_callback); @@ -353,7 +358,6 @@ PrefsTabHelper::PrefsTabHelper(WebContents* contents) RegisterFontFamilyMapObserver(&pref_change_registrar_, prefs::kWebKitPictographFontFamilyMap, webkit_callback); -#endif // !defined(OS_ANDROID) } renderer_preferences_util::UpdateFromSystemSettings( @@ -576,7 +580,7 @@ Profile* PrefsTabHelper::GetProfile() { return Profile::FromBrowserContext(web_contents_->GetBrowserContext()); } -void PrefsTabHelper::OnWebPrefChanged(const std::string& pref_name) { +void PrefsTabHelper::OnFontFamilyPrefChanged(const std::string& pref_name) { // When a font family pref's value goes from non-empty to the empty string, we // must add it to the usual WebPreferences struct passed to the renderer. // @@ -604,6 +608,12 @@ void PrefsTabHelper::OnWebPrefChanged(const std::string& pref_name) { return; } } +} + +void PrefsTabHelper::OnWebPrefChanged(const std::string& pref_name) { +#if !defined(OS_ANDROID) + OnFontFamilyPrefChanged(pref_name); +#endif - UpdateWebPreferences(); + web_contents_->GetRenderViewHost()->OnWebkitPreferencesChanged(); } diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.h b/chrome/browser/ui/prefs/prefs_tab_helper.h index 055a2f1..f97410d 100644 --- a/chrome/browser/ui/prefs/prefs_tab_helper.h +++ b/chrome/browser/ui/prefs/prefs_tab_helper.h @@ -51,6 +51,8 @@ class PrefsTabHelper : public content::NotificationObserver, void UpdateRendererPreferences(); Profile* GetProfile(); + + void OnFontFamilyPrefChanged(const std::string& pref_name); void OnWebPrefChanged(const std::string& pref_name); content::WebContents* web_contents_; |