Index: chrome/browser/themes/theme_service_factory.cc |
diff --git a/chrome/browser/themes/theme_service_factory.cc b/chrome/browser/themes/theme_service_factory.cc |
index 92fe85cdd03146c9da63d1c0e66d54c213a424fe..58dbb9673bc18e56a2733c93e9741589f599da06 100644 |
--- a/chrome/browser/themes/theme_service_factory.cc |
+++ b/chrome/browser/themes/theme_service_factory.cc |
@@ -23,6 +23,11 @@ |
#include "ui/linux_ui/linux_ui.h" |
#endif |
+#if defined(ENABLE_MANAGED_USERS) |
+#include "chrome/browser/managed_mode/managed_user_service.h" |
+#include "chrome/browser/managed_mode/managed_user_theme.h" |
+#endif |
+ |
// static |
ThemeService* ThemeServiceFactory::GetForProfile(Profile* profile) { |
return static_cast<ThemeService*>( |
@@ -63,6 +68,13 @@ BrowserContextKeyedService* ThemeServiceFactory::BuildServiceInstanceFor( |
#endif |
provider->Init(static_cast<Profile*>(profile)); |
+#if defined(ENABLE_MANAGED_USERS) |
+ if (ManagedUserService::ProfileIsManaged(static_cast<Profile*>(profile)) && |
+ provider->UsingDefaultTheme()) { |
+ provider->SetCustomDefaultTheme(new ManagedUserTheme); |
+ } |
+#endif |
+ |
return provider; |
} |