Index: chrome/browser/ui/gtk/gtk_theme_service.cc |
diff --git a/chrome/browser/ui/gtk/gtk_theme_service.cc b/chrome/browser/ui/gtk/gtk_theme_service.cc |
index 5c0f73c052b0fdfe4b8d0f46ecc984db47f4f7b7..900f2041234c29b26c80a6d0c1d205e34efdbd5f 100644 |
--- a/chrome/browser/ui/gtk/gtk_theme_service.cc |
+++ b/chrome/browser/ui/gtk/gtk_theme_service.cc |
@@ -294,7 +294,6 @@ void GtkThemeService::Init(Profile* profile) { |
registrar_.Add(prefs::kUsesSystemTheme, |
base::Bind(&GtkThemeService::OnUsesSystemThemeChanged, |
base::Unretained(this))); |
- use_gtk_ = profile->GetPrefs()->GetBoolean(prefs::kUsesSystemTheme); |
ThemeService::Init(profile); |
} |
@@ -620,6 +619,14 @@ void GtkThemeService::ClearAllThemeData() { |
} |
void GtkThemeService::LoadThemePrefs() { |
+ if (ThemeService::UsingDefaultTheme()) { |
+ use_gtk_ = profile()->GetPrefs()->GetBoolean(prefs::kUsesSystemTheme); |
+ } else { |
+ // Do this here since ThemeServiceFactory::SetThemeForProfile() |
+ // doesn't know to set kUsesSystemTheme to false. |
+ profile()->GetPrefs()->SetBoolean(prefs::kUsesSystemTheme, false); |
+ use_gtk_ = false; |
+ } |
if (use_gtk_) { |
LoadGtkValues(); |
} else { |