Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(918)

Unified Diff: chrome/browser/ui/gtk/browser_window_gtk.cc

Issue 11345008: Remove content::NotificationObserver dependency from most Prefs code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address review comments. Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/gtk/browser_window_gtk.cc
diff --git a/chrome/browser/ui/gtk/browser_window_gtk.cc b/chrome/browser/ui/gtk/browser_window_gtk.cc
index a1c3026e12fc70dde4a8833721aad2127f3bc778..e0e9203955a1d87ad9635cae9a602f167ebf1464 100644
--- a/chrome/browser/ui/gtk/browser_window_gtk.cc
+++ b/chrome/browser/ui/gtk/browser_window_gtk.cc
@@ -1180,26 +1180,21 @@ void BrowserWindowGtk::ConfirmBrowserCloseWithPendingDownloads() {
void BrowserWindowGtk::Observe(int type,
const content::NotificationSource& source,
const content::NotificationDetails& details) {
- switch (type) {
- case chrome::NOTIFICATION_PREF_CHANGED: {
- std::string* pref_name = content::Details<std::string>(details).ptr();
- if (*pref_name == prefs::kUseCustomChromeFrame) {
- UpdateCustomFrame();
- ui::SetHideTitlebarWhenMaximizedProperty(
- ui::GetX11WindowFromGtkWidget(GTK_WIDGET(window_)),
- UseCustomFrame() ? ui::HIDE_TITLEBAR_WHEN_MAXIMIZED
- : ui::SHOW_TITLEBAR_WHEN_MAXIMIZED);
- } else {
- NOTREACHED() << "Got pref change notification we didn't register for!";
- }
- break;
- }
- case chrome::NOTIFICATION_PROFILE_CACHED_INFO_CHANGED:
- // The profile avatar icon may have changed.
- gtk_util::SetWindowIcon(window_, browser_->profile());
- break;
- default:
- break;
+ DCHECK_EQ(chrome::NOTIFICATION_PROFILE_CACHED_INFO_CHANGED, type);
+ // The profile avatar icon may have changed.
+ gtk_util::SetWindowIcon(window_, browser_->profile());
+}
+
+void BrowserWindowGtk::OnPreferenceChanged(PrefServiceBase* service,
+ const std::string& pref_name) {
+ if (pref_name == prefs::kUseCustomChromeFrame) {
+ UpdateCustomFrame();
+ ui::SetHideTitlebarWhenMaximizedProperty(
+ ui::GetX11WindowFromGtkWidget(GTK_WIDGET(window_)),
+ UseCustomFrame() ? ui::HIDE_TITLEBAR_WHEN_MAXIMIZED
+ : ui::SHOW_TITLEBAR_WHEN_MAXIMIZED);
+ } else {
+ NOTREACHED() << "Got pref change notification we didn't register for!";
}
}

Powered by Google App Engine
This is Rietveld 408576698