Chromium Code Reviews| Index: chrome/browser/extensions/component_loader.cc |
| diff --git a/chrome/browser/extensions/component_loader.cc b/chrome/browser/extensions/component_loader.cc |
| index 7566a1fa3aca08b5ae6b0037fb71229602a2b088..d149b36999017cce4da1b5d34f4696502586870b 100644 |
| --- a/chrome/browser/extensions/component_loader.cc |
| +++ b/chrome/browser/extensions/component_loader.cc |
| @@ -22,6 +22,7 @@ |
| #include "chrome/browser/search/hotword_service.h" |
| #include "chrome/browser/search/hotword_service_factory.h" |
| #include "chrome/common/channel_info.h" |
| +#include "chrome/common/chrome_features.h" |
| #include "chrome/common/chrome_paths.h" |
| #include "chrome/common/chrome_switches.h" |
| #include "chrome/common/extensions/extension_constants.h" |
| @@ -106,6 +107,10 @@ bool IsNormalSession() { |
| } |
| #endif // defined(OS_CHROMEOS) |
| +bool IsMaterialDesignBookmarksEnabled() { |
| + return base::FeatureList::IsEnabled(features::kMaterialDesignBookmarks); |
| +} |
| + |
| } // namespace |
| ComponentLoader::ComponentExtensionInfo::ComponentExtensionInfo( |
| @@ -454,6 +459,13 @@ void ComponentLoader::EnableBackgroundExtensionsForTesting() { |
| void ComponentLoader::AddDefaultComponentExtensions( |
| bool skip_session_components) { |
| + base::FilePath bookmarks_path(IsMaterialDesignBookmarksEnabled() |
| + ? FILE_PATH_LITERAL("md_bookmarks") |
| + : FILE_PATH_LITERAL("bookmark_manager")); |
| + int bookmark_manifest_id = IsMaterialDesignBookmarksEnabled() |
|
Dan Beam
2016/10/25 18:05:51
can we cache this result?
also, can we just do th
calamity
2016/10/28 05:58:22
Done.
|
| + ? IDR_MD_BOOKMARKS_MANIFEST |
| + : IDR_BOOKMARKS_MANIFEST; |
| + |
| // Do not add component extensions that have background pages here -- add them |
| // to AddDefaultComponentExtensionsWithBackgroundPages. |
| #if defined(OS_CHROMEOS) |
| @@ -472,16 +484,14 @@ void ComponentLoader::AddDefaultComponentExtensions( |
| const base::CommandLine* command_line = |
| base::CommandLine::ForCurrentProcess(); |
| if (!command_line->HasSwitch(chromeos::switches::kGuestSession)) |
| - Add(IDR_BOOKMARKS_MANIFEST, |
| - base::FilePath(FILE_PATH_LITERAL("bookmark_manager"))); |
| + Add(bookmark_manifest_id, bookmarks_path); |
| Add(IDR_CROSH_BUILTIN_MANIFEST, base::FilePath(FILE_PATH_LITERAL( |
| "/usr/share/chromeos-assets/crosh_builtin"))); |
| } |
| #else // defined(OS_CHROMEOS) |
| DCHECK(!skip_session_components); |
| - Add(IDR_BOOKMARKS_MANIFEST, |
| - base::FilePath(FILE_PATH_LITERAL("bookmark_manager"))); |
| + Add(bookmark_manifest_id, bookmarks_path); |
| #if defined(ENABLE_PRINTING) |
| // Cloud Print component app. Not required on Chrome OS. |
| Add(IDR_CLOUDPRINT_MANIFEST, |