Index: chrome/browser/ui/prefs/prefs_tab_helper.cc |
diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/prefs/prefs_tab_helper.cc |
index 8beb5c8e513707928c33ec6b51110d3180b6b285..0e7f07a11a6894e48a84fdff06d8a6682779b046 100644 |
--- a/chrome/browser/ui/prefs/prefs_tab_helper.cc |
+++ b/chrome/browser/ui/prefs/prefs_tab_helper.cc |
@@ -6,7 +6,6 @@ |
#include "base/string_util.h" |
#include "base/stringprintf.h" |
-#include "base/utf_string_conversions.h" |
#include "chrome/browser/browser_process.h" |
#include "chrome/browser/prefs/overlay_user_pref_store.h" |
#include "chrome/browser/prefs/pref_service.h" |
@@ -30,28 +29,6 @@ using content::WebContents; |
namespace { |
-const char* kPerTabPrefsToObserve[] = { |
- prefs::kDefaultCharset, |
- prefs::kWebKitJavascriptEnabled, |
- prefs::kWebKitJavascriptCanOpenWindowsAutomatically, |
- prefs::kWebKitLoadsImagesAutomatically, |
- prefs::kWebKitImagesEnabled, |
- prefs::kWebKitPluginsEnabled, |
- prefs::kWebKitCursiveFontFamily, |
- prefs::kWebKitFantasyFontFamily, |
- prefs::kWebKitFixedFontFamily, |
- prefs::kWebKitSansSerifFontFamily, |
- prefs::kWebKitSerifFontFamily, |
- prefs::kWebKitStandardFontFamily, |
- prefs::kWebKitDefaultFontSize, |
- prefs::kWebKitDefaultFixedFontSize, |
- prefs::kWebKitMinimumFontSize, |
- prefs::kWebKitMinimumLogicalFontSize, |
- prefs::kWebKitXSSAuditorEnabled |
-}; |
- |
-const int kPerTabPrefsToObserveLength = arraysize(kPerTabPrefsToObserve); |
- |
static void RegisterFontsAndCharsetPrefs(PrefService* prefs) { |
WebPreferences pref_defaults; |
@@ -90,31 +67,6 @@ static void RegisterFontsAndCharsetPrefs(PrefService* prefs) { |
PrefService::UNSYNCABLE_PREF); |
} |
-static void RegisterPerTabUserPrefs(PrefService* prefs) { |
- WebPreferences pref_defaults; |
- |
- prefs->RegisterBooleanPref(prefs::kWebKitJavascriptEnabled, |
- pref_defaults.javascript_enabled, |
- PrefService::UNSYNCABLE_PREF); |
- prefs->RegisterBooleanPref( |
- prefs::kWebKitJavascriptCanOpenWindowsAutomatically, |
- true, |
- PrefService::UNSYNCABLE_PREF); |
- prefs->RegisterBooleanPref(prefs::kWebKitLoadsImagesAutomatically, |
- pref_defaults.loads_images_automatically, |
- PrefService::UNSYNCABLE_PREF); |
- prefs->RegisterBooleanPref(prefs::kWebKitImagesEnabled, |
- pref_defaults.images_enabled, |
- PrefService::UNSYNCABLE_PREF); |
- prefs->RegisterBooleanPref(prefs::kWebKitPluginsEnabled, |
- pref_defaults.plugins_enabled, |
- PrefService::UNSYNCABLE_PREF); |
- prefs->RegisterBooleanPref(prefs::kWebKitXSSAuditorEnabled, |
- pref_defaults.xss_auditor_enabled, |
- PrefService::UNSYNCABLE_PREF); |
- RegisterFontsAndCharsetPrefs(prefs); |
-} |
- |
// The list of prefs we want to observe. |
const char* kPrefsToObserve[] = { |
prefs::kDefaultZoomLevel, |
@@ -352,14 +304,6 @@ PrefsTabHelper::PrefsTabHelper(WebContents* contents) |
prefs::kWebKitFantasyFontFamilyMap, this); |
} |
- per_tab_prefs_.reset( |
- GetProfile()->GetPrefs()->CreatePrefServiceWithPerTabPrefStore()); |
- RegisterPerTabUserPrefs(per_tab_prefs_.get()); |
- per_tab_pref_change_registrar_.Init(per_tab_prefs_.get()); |
- for (int i = 0; i < kPerTabPrefsToObserveLength; ++i) { |
- per_tab_pref_change_registrar_.Add(kPerTabPrefsToObserve[i], this); |
- } |
- |
renderer_preferences_util::UpdateFromSystemSettings( |
web_contents()->GetMutableRendererPrefs(), GetProfile()); |
@@ -385,65 +329,6 @@ void PrefsTabHelper::InitIncognitoUserPrefStore( |
} |
// static |
-void PrefsTabHelper::InitPerTabUserPrefStore( |
- OverlayUserPrefStore* pref_store) { |
- // List of keys that have per-tab and per-profile (Global) counterpart. |
- // Setting a per-profile preference affects all tabs sharing the profile, |
- // unless a tab has specified its own per-tab property value. Changing a |
- // per-profile preference on a per-tab pref store delegates to the underlying |
- // per-profile pref store. |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitJavascriptEnabled, |
- prefs::kWebKitGlobalJavascriptEnabled); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitJavascriptCanOpenWindowsAutomatically, |
- prefs::kWebKitGlobalJavascriptCanOpenWindowsAutomatically); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitLoadsImagesAutomatically, |
- prefs::kWebKitGlobalLoadsImagesAutomatically); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitImagesEnabled); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitPluginsEnabled, |
- prefs::kWebKitGlobalPluginsEnabled); |
- pref_store->RegisterOverlayPref( |
- prefs::kDefaultCharset, |
- prefs::kGlobalDefaultCharset); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitStandardFontFamily, |
- prefs::kWebKitGlobalStandardFontFamily); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitFixedFontFamily, |
- prefs::kWebKitGlobalFixedFontFamily); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitSerifFontFamily, |
- prefs::kWebKitGlobalSerifFontFamily); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitSansSerifFontFamily, |
- prefs::kWebKitGlobalSansSerifFontFamily); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitCursiveFontFamily, |
- prefs::kWebKitGlobalCursiveFontFamily); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitFantasyFontFamily, |
- prefs::kWebKitGlobalFantasyFontFamily); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitDefaultFontSize, |
- prefs::kWebKitGlobalDefaultFontSize); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitDefaultFixedFontSize, |
- prefs::kWebKitGlobalDefaultFixedFontSize); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitMinimumFontSize, |
- prefs::kWebKitGlobalMinimumFontSize); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitMinimumLogicalFontSize, |
- prefs::kWebKitGlobalMinimumLogicalFontSize); |
- pref_store->RegisterOverlayPref( |
- prefs::kWebKitXSSAuditorEnabled); |
-} |
- |
-// static |
void PrefsTabHelper::RegisterUserPrefs(PrefService* prefs) { |
WebPreferences pref_defaults; |
prefs->RegisterBooleanPref(prefs::kWebKitGlobalJavascriptEnabled, |
@@ -570,15 +455,6 @@ void PrefsTabHelper::RegisterUserPrefs(PrefService* prefs) { |
MigratePreferences(prefs); |
} |
-void PrefsTabHelper::RenderViewCreated( |
- content::RenderViewHost* render_view_host) { |
- UpdateWebPreferences(); |
-} |
- |
-void PrefsTabHelper::WebContentsDestroyed(WebContents* tab) { |
- per_tab_pref_change_registrar_.RemoveAll(); |
-} |
- |
void PrefsTabHelper::Observe(int type, |
const content::NotificationSource& source, |
const content::NotificationDetails& details) { |
@@ -595,8 +471,7 @@ void PrefsTabHelper::Observe(int type, |
case chrome::NOTIFICATION_PREF_CHANGED: { |
std::string* pref_name_in = content::Details<std::string>(details).ptr(); |
DCHECK(content::Source<PrefService>(source).ptr() == |
- GetProfile()->GetPrefs() || |
- content::Source<PrefService>(source).ptr() == per_tab_prefs_); |
+ GetProfile()->GetPrefs()); |
if ((*pref_name_in == prefs::kDefaultCharset || |
*pref_name_in == prefs::kGlobalDefaultCharset) || |
StartsWithASCII(*pref_name_in, "webkit.webprefs.", true)) { |
@@ -617,44 +492,8 @@ void PrefsTabHelper::Observe(int type, |
void PrefsTabHelper::UpdateWebPreferences() { |
content::RenderViewHostDelegate* rvhd = |
web_contents()->GetRenderViewHost()->GetDelegate(); |
- WebPreferences prefs = rvhd->GetWebkitPrefs(); |
- prefs.javascript_enabled = |
- per_tab_prefs_->GetBoolean(prefs::kWebKitJavascriptEnabled); |
- prefs.javascript_can_open_windows_automatically = |
- per_tab_prefs_->GetBoolean( |
- prefs::kWebKitJavascriptCanOpenWindowsAutomatically); |
- prefs.loads_images_automatically = |
- per_tab_prefs_->GetBoolean(prefs::kWebKitLoadsImagesAutomatically); |
- prefs.images_enabled = |
- per_tab_prefs_->GetBoolean(prefs::kWebKitImagesEnabled); |
- prefs.plugins_enabled = |
- per_tab_prefs_->GetBoolean(prefs::kWebKitPluginsEnabled); |
- prefs.standard_font_family = |
- UTF8ToUTF16(per_tab_prefs_->GetString(prefs::kWebKitStandardFontFamily)); |
- prefs.fixed_font_family = |
- UTF8ToUTF16(per_tab_prefs_->GetString(prefs::kWebKitFixedFontFamily)); |
- prefs.serif_font_family = |
- UTF8ToUTF16(per_tab_prefs_->GetString(prefs::kWebKitSerifFontFamily)); |
- prefs.sans_serif_font_family = |
- UTF8ToUTF16(per_tab_prefs_->GetString(prefs::kWebKitSansSerifFontFamily)); |
- prefs.cursive_font_family = |
- UTF8ToUTF16(per_tab_prefs_->GetString(prefs::kWebKitCursiveFontFamily)); |
- prefs.fantasy_font_family = |
- UTF8ToUTF16(per_tab_prefs_->GetString(prefs::kWebKitFantasyFontFamily)); |
- prefs.default_font_size = |
- per_tab_prefs_->GetInteger(prefs::kWebKitDefaultFontSize); |
- prefs.default_fixed_font_size = |
- per_tab_prefs_->GetInteger(prefs::kWebKitDefaultFixedFontSize); |
- prefs.minimum_font_size = |
- per_tab_prefs_->GetInteger(prefs::kWebKitMinimumFontSize); |
- prefs.minimum_logical_font_size = |
- per_tab_prefs_->GetInteger(prefs::kWebKitMinimumLogicalFontSize); |
- prefs.xss_auditor_enabled = |
- per_tab_prefs_->GetBoolean(prefs::kWebKitXSSAuditorEnabled); |
- prefs.default_encoding = |
- per_tab_prefs_->GetString(prefs::kDefaultCharset); |
- |
- web_contents()->GetRenderViewHost()->UpdateWebkitPreferences(prefs); |
+ web_contents()->GetRenderViewHost()->UpdateWebkitPreferences( |
+ rvhd->GetWebkitPrefs()); |
} |
void PrefsTabHelper::UpdateRendererPreferences() { |