Index: chrome/browser/ui/browser.cc |
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc |
index d8051d3c5dc3596b26c2f7db2d5df806a7e90dfe..005d66c3356c64a5db4c2b1770eb0e6feea4fd5a 100644 |
--- a/chrome/browser/ui/browser.cc |
+++ b/chrome/browser/ui/browser.cc |
@@ -1916,23 +1916,6 @@ void Browser::Observe(int type, |
break; |
#endif |
- case chrome::NOTIFICATION_PREF_CHANGED: { |
- const std::string& pref_name = |
- *content::Details<std::string>(details).ptr(); |
- if (pref_name == prefs::kDevToolsDisabled) { |
- if (profile_->GetPrefs()->GetBoolean(prefs::kDevToolsDisabled)) |
- content::DevToolsManager::GetInstance()->CloseAllClientHosts(); |
- } else if (pref_name == prefs::kShowBookmarkBar) { |
- UpdateBookmarkBarState(BOOKMARK_BAR_STATE_CHANGE_PREF_CHANGE); |
- } else if (pref_name == prefs::kHomePage) { |
- PrefService* pref_service = content::Source<PrefService>(source).ptr(); |
- MarkHomePageAsChanged(pref_service); |
- } else { |
- NOTREACHED(); |
- } |
- break; |
- } |
- |
case chrome::NOTIFICATION_WEB_CONTENT_SETTINGS_CHANGED: { |
WebContents* web_contents = content::Source<WebContents>(source).ptr(); |
if (web_contents == chrome::GetActiveWebContents(this)) { |
@@ -1956,6 +1939,20 @@ void Browser::Observe(int type, |
} |
} |
+void Browser::OnPreferenceChanged(PrefServiceBase* service, |
+ const std::string& pref_name) { |
+ if (pref_name == prefs::kDevToolsDisabled) { |
+ if (profile_->GetPrefs()->GetBoolean(prefs::kDevToolsDisabled)) |
+ content::DevToolsManager::GetInstance()->CloseAllClientHosts(); |
+ } else if (pref_name == prefs::kShowBookmarkBar) { |
+ UpdateBookmarkBarState(BOOKMARK_BAR_STATE_CHANGE_PREF_CHANGE); |
+ } else if (pref_name == prefs::kHomePage) { |
+ MarkHomePageAsChanged(static_cast<PrefService*>(service)); |
+ } else { |
+ NOTREACHED(); |
+ } |
+} |
+ |
void Browser::ModeChanged(const chrome::search::Mode& old_mode, |
const chrome::search::Mode& new_mode) { |
UpdateBookmarkBarState(BOOKMARK_BAR_STATE_CHANGE_TAB_STATE); |