Index: chrome/browser/extensions/extension_service.cc |
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc |
index a10372ecd07d6a56aa87682c196f724c959538f8..779456147d73a23a45189e6b4b28fe095f16f287 100644 |
--- a/chrome/browser/extensions/extension_service.cc |
+++ b/chrome/browser/extensions/extension_service.cc |
@@ -2107,6 +2107,15 @@ void ExtensionService::AddExtension(const Extension* extension) { |
SyncExtensionChangeIfNeeded(*extension); |
NotifyExtensionLoaded(extension); |
DoPostLoadTasks(extension); |
+ |
+#if defined(ENABLE_THEMES) |
+ if (extension->is_theme()) { |
+ // Now that the theme extension is visible from outside the |
+ // ExtensionService, notify the ThemeService about the |
+ // newly-installed theme. |
+ ThemeServiceFactory::GetForProfile(profile_)->SetTheme(extension); |
+ } |
+#endif |
} |
void ExtensionService::AddComponentExtension(const Extension* extension) { |