summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorthestig@chromium.org <thestig@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-22 19:41:55 +0000
committerthestig@chromium.org <thestig@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-22 19:41:55 +0000
commit03d25818b737701e17bb2e800f272be24a194767 (patch)
tree88ff93da0ae82dcfe436f6eff723e522088909a8
parent61592f511e5e92b71458ece4200b8db9721cd10e (diff)
downloadchromium_src-03d25818b737701e17bb2e800f272be24a194767.zip
chromium_src-03d25818b737701e17bb2e800f272be24a194767.tar.gz
chromium_src-03d25818b737701e17bb2e800f272be24a194767.tar.bz2
Cleanup: Remove most deprecated Profile::GetExtensionService() usage.
Review URL: https://codereview.chromium.org/329893002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@279017 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/background/background_mode_manager.cc23
-rw-r--r--chrome/browser/background/background_mode_manager_unittest.cc11
-rw-r--r--chrome/browser/devtools/devtools_target_impl.cc61
-rw-r--r--chrome/browser/extensions/api/developer_private/developer_private_api.cc48
-rw-r--r--chrome/browser/extensions/api/management/management_api.cc5
-rw-r--r--chrome/browser/extensions/api/media_galleries_private/gallery_watch_state_tracker.cc7
-rw-r--r--chrome/browser/extensions/api/tab_capture/tab_capture_apitest.cc56
-rw-r--r--chrome/browser/extensions/api/terminal/terminal_extension_helper.cc27
-rw-r--r--chrome/browser/extensions/api/webstore_private/webstore_private_apitest.cc5
-rw-r--r--chrome/browser/extensions/chrome_app_api_browsertest.cc9
-rw-r--r--chrome/browser/extensions/convert_web_app_browsertest.cc6
-rw-r--r--chrome/browser/extensions/extension_browsertest.cc3
-rw-r--r--chrome/browser/extensions/extension_context_menu_browsertest.cc16
-rw-r--r--chrome/browser/extensions/extension_crash_recovery_browsertest.cc13
-rw-r--r--chrome/browser/extensions/extension_disabled_ui_browsertest.cc15
-rw-r--r--chrome/browser/extensions/extension_functional_browsertest.cc16
-rw-r--r--chrome/browser/extensions/extension_message_bubble_controller_unittest.cc3
-rw-r--r--chrome/browser/extensions/extension_web_ui.cc16
-rw-r--r--chrome/browser/extensions/extension_web_ui_unittest.cc17
-rw-r--r--chrome/browser/extensions/isolated_app_browsertest.cc46
-rw-r--r--chrome/browser/extensions/tab_helper.cc19
-rw-r--r--chrome/browser/extensions/theme_installed_infobar_delegate.cc4
-rw-r--r--chrome/browser/extensions/user_script_listener.cc9
-rw-r--r--chrome/browser/extensions/webstore_startup_installer_browsertest.cc6
-rw-r--r--chrome/browser/first_run/first_run.cc7
-rw-r--r--chrome/browser/infobars/infobars_browsertest.cc5
-rw-r--r--chrome/browser/media/media_stream_capture_indicator.cc15
-rw-r--r--chrome/browser/memory_details.cc12
-rw-r--r--chrome/browser/notifications/message_center_settings_controller.cc12
-rw-r--r--chrome/browser/performance_monitor/performance_monitor_browsertest.cc15
-rw-r--r--chrome/browser/profile_resetter/profile_resetter.cc21
-rw-r--r--chrome/browser/profile_resetter/resettable_settings_snapshot.cc13
-rw-r--r--chrome/browser/speech/extension_api/tts_engine_extension_api.cc15
-rw-r--r--chrome/browser/tab_contents/tab_util.cc8
-rw-r--r--chrome/browser/task_manager/background_information.cc19
-rw-r--r--chrome/browser/task_manager/panel_information.cc6
-rw-r--r--chrome/browser/themes/theme_service_factory.cc5
-rw-r--r--chrome/browser/ui/app_list/app_list_view_delegate.cc15
-rw-r--r--chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.cc15
-rw-r--r--chrome/browser/ui/ash/launcher/chrome_launcher_controller.cc16
-rw-r--r--chrome/browser/ui/ash/launcher/chrome_launcher_controller.h3
-rw-r--r--chrome/browser/ui/ash/launcher/launcher_app_tab_helper.cc6
-rw-r--r--chrome/browser/ui/ash/launcher/launcher_item_controller.cc15
-rw-r--r--chrome/browser/ui/browser_command_controller.cc4
-rw-r--r--chrome/browser/ui/browser_commands.cc4
-rw-r--r--chrome/browser/ui/fullscreen/fullscreen_exit_bubble.cc5
-rw-r--r--chrome/browser/ui/startup/startup_browser_creator_impl.cc9
-rw-r--r--chrome/browser/ui/views/extensions/bookmark_app_bubble_view.cc18
-rw-r--r--chrome/browser/ui/views/location_bar/page_action_image_view.cc12
-rw-r--r--chrome/browser/ui/webui/app_launcher_page_ui.cc4
-rw-r--r--chrome/browser/ui/webui/extensions/extension_settings_browsertest.cc3
-rw-r--r--chrome/browser/ui/webui/extensions/extension_settings_handler.cc5
-rw-r--r--chrome/browser/ui/webui/ntp/favicon_webui_handler.cc13
-rw-r--r--chrome/browser/ui/webui/ntp/new_tab_ui.cc17
-rw-r--r--chrome/browser/ui/webui/options/content_settings_handler.cc13
-rw-r--r--chrome/browser/ui/webui/uber/uber_ui.cc81
56 files changed, 429 insertions, 423 deletions
diff --git a/chrome/browser/background/background_mode_manager.cc b/chrome/browser/background/background_mode_manager.cc
index d2c79d2..cf055d0 100644
--- a/chrome/browser/background/background_mode_manager.cc
+++ b/chrome/browser/background/background_mode_manager.cc
@@ -665,17 +665,20 @@ void BackgroundModeManager::OnBackgroundAppInstalled(
void BackgroundModeManager::CheckReloadStatus(
const Extension* extension,
bool* is_being_reloaded) {
- // Walk the BackgroundModeData for all profiles to see if one of their
- // extensions is being reloaded.
- for (BackgroundModeInfoMap::const_iterator it =
- background_mode_data_.begin();
- it != background_mode_data_.end();
- ++it) {
- Profile* profile = it->first;
- // If the extension is being reloaded, no need to show a notification.
- if (profile->GetExtensionService()->IsBeingReloaded(extension->id()))
- *is_being_reloaded = true;
+ // Walk the BackgroundModeData for all profiles to see if one of their
+ // extensions is being reloaded.
+ for (BackgroundModeInfoMap::const_iterator it =
+ background_mode_data_.begin();
+ it != background_mode_data_.end();
+ ++it) {
+ ExtensionService* service =
+ extensions::ExtensionSystem::Get(it->first)->extension_service();
+ // If the extension is being reloaded, no need to show a notification.
+ if (service->IsBeingReloaded(extension->id())) {
+ *is_being_reloaded = true;
+ return;
}
+ }
}
void BackgroundModeManager::CreateStatusTrayIcon() {
diff --git a/chrome/browser/background/background_mode_manager_unittest.cc b/chrome/browser/background/background_mode_manager_unittest.cc
index ce9ca5f..f543385 100644
--- a/chrome/browser/background/background_mode_manager_unittest.cc
+++ b/chrome/browser/background/background_mode_manager_unittest.cc
@@ -19,6 +19,7 @@
#include "chrome/test/base/testing_profile.h"
#include "chrome/test/base/testing_profile_manager.h"
#include "content/public/test/test_browser_thread_bundle.h"
+#include "extensions/browser/extension_system.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/gfx/image/image.h"
#include "ui/gfx/image/image_unittest_util.h"
@@ -107,6 +108,7 @@ class TestBackgroundModeManager : public BackgroundModeManager {
}
bool HaveStatusTray() const { return have_status_tray_; }
bool IsLaunchOnStartup() const { return launch_on_startup_; }
+
private:
bool enabled_;
int app_count_;
@@ -509,7 +511,8 @@ TEST_F(BackgroundModeManagerTest, BackgroundMenuGeneration) {
CommandLine::ForCurrentProcess(),
base::FilePath(),
false);
- ExtensionService* service = profile->GetExtensionService();
+ ExtensionService* service =
+ extensions::ExtensionSystem::Get(profile)->extension_service();
service->Init();
service->AddComponentExtension(component_extension);
@@ -646,7 +649,8 @@ TEST_F(BackgroundModeManagerTest, BackgroundMenuGenerationMultipleProfile) {
CommandLine::ForCurrentProcess(),
base::FilePath(),
false);
- ExtensionService* service1 = profile1->GetExtensionService();
+ ExtensionService* service1 =
+ extensions::ExtensionSystem::Get(profile1)->extension_service();
service1->Init();
service1->AddComponentExtension(component_extension);
@@ -659,7 +663,8 @@ TEST_F(BackgroundModeManagerTest, BackgroundMenuGenerationMultipleProfile) {
CommandLine::ForCurrentProcess(),
base::FilePath(),
false);
- ExtensionService* service2 = profile2->GetExtensionService();
+ ExtensionService* service2 =
+ extensions::ExtensionSystem::Get(profile2)->extension_service();
service2->Init();
service2->AddComponentExtension(component_extension);
diff --git a/chrome/browser/devtools/devtools_target_impl.cc b/chrome/browser/devtools/devtools_target_impl.cc
index eb32924..6a867e5 100644
--- a/chrome/browser/devtools/devtools_target_impl.cc
+++ b/chrome/browser/devtools/devtools_target_impl.cc
@@ -7,7 +7,6 @@
#include "base/strings/stringprintf.h"
#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/devtools/devtools_window.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/extension_tab_util.h"
#include "chrome/browser/guest_view/guest_view_base.h"
#include "chrome/browser/profiles/profile.h"
@@ -21,7 +20,9 @@
#include "content/public/browser/render_view_host.h"
#include "content/public/browser/web_contents.h"
#include "extensions/browser/extension_host.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/browser/extension_system.h"
+#include "extensions/browser/process_manager.h"
#include "extensions/common/constants.h"
using content::BrowserThread;
@@ -98,33 +99,37 @@ RenderViewHostTarget::RenderViewHostTarget(RenderViewHost* rvh, bool is_tab)
if (is_tab) {
set_type(kTargetTypePage);
tab_id_ = extensions::ExtensionTabUtil::GetTabId(web_contents);
- } else {
- Profile* profile =
- Profile::FromBrowserContext(web_contents->GetBrowserContext());
- if (profile) {
- ExtensionService* extension_service = profile->GetExtensionService();
- const extensions::Extension* extension = extension_service->
- extensions()->GetByID(GetURL().host());
- if (extension) {
- set_title(extension->name());
- extensions::ExtensionHost* extension_host =
- extensions::ExtensionSystem::Get(profile)->process_manager()->
- GetBackgroundHostForExtension(extension->id());
- if (extension_host &&
- extension_host->host_contents() == web_contents) {
- set_type(kTargetTypeBackgroundPage);
- extension_id_ = extension->id();
- } else if (extension->is_hosted_app()
- || extension->is_legacy_packaged_app()
- || extension->is_platform_app()) {
- set_type(kTargetTypeApp);
- }
- set_favicon_url(extensions::ExtensionIconSource::GetIconURL(
- extension, extension_misc::EXTENSION_ICON_SMALLISH,
- ExtensionIconSet::MATCH_BIGGER, false, NULL));
- }
- }
+ return;
+ }
+
+ const extensions::Extension* extension = extensions::ExtensionRegistry::Get(
+ web_contents->GetBrowserContext())->enabled_extensions().GetByID(
+ GetURL().host());
+ if (!extension)
+ return;
+
+ Profile* profile =
+ Profile::FromBrowserContext(web_contents->GetBrowserContext());
+ if (!profile)
+ return;
+ extensions::ExtensionSystem* extension_system =
+ extensions::ExtensionSystem::Get(profile);
+ set_title(extension->name());
+ extensions::ExtensionHost* extension_host =
+ extension_system->process_manager()->GetBackgroundHostForExtension(
+ extension->id());
+ if (extension_host &&
+ extension_host->host_contents() == web_contents) {
+ set_type(kTargetTypeBackgroundPage);
+ extension_id_ = extension->id();
+ } else if (extension->is_hosted_app()
+ || extension->is_legacy_packaged_app()
+ || extension->is_platform_app()) {
+ set_type(kTargetTypeApp);
}
+ set_favicon_url(extensions::ExtensionIconSource::GetIconURL(
+ extension, extension_misc::EXTENSION_ICON_SMALLISH,
+ ExtensionIconSet::MATCH_BIGGER, false, NULL));
}
bool RenderViewHostTarget::Activate() const {
@@ -282,7 +287,7 @@ std::string DevToolsTargetImpl::GetExtensionId() const {
return std::string();
}
-void DevToolsTargetImpl::Inspect(Profile*) const {
+void DevToolsTargetImpl::Inspect(Profile* /*profile*/) const {
}
void DevToolsTargetImpl::Reload() const {
diff --git a/chrome/browser/extensions/api/developer_private/developer_private_api.cc b/chrome/browser/extensions/api/developer_private/developer_private_api.cc
index 2d11ae2..3408545 100644
--- a/chrome/browser/extensions/api/developer_private/developer_private_api.cc
+++ b/chrome/browser/extensions/api/developer_private/developer_private_api.cc
@@ -90,11 +90,14 @@ namespace developer_private = api::developer_private;
namespace {
-const base::FilePath::CharType kUnpackedAppsFolder[]
- = FILE_PATH_LITERAL("apps_target");
+const char kUnpackedAppsFolder[] = "apps_target";
+
+ExtensionService* GetExtensionService(Profile* profile) {
+ return ExtensionSystem::Get(profile)->extension_service();
+}
ExtensionUpdater* GetExtensionUpdater(Profile* profile) {
- return profile->GetExtensionService()->updater();
+ return GetExtensionService(profile)->updater();
}
GURL GetImageURLFromData(const std::string& contents) {
@@ -583,7 +586,7 @@ ItemInspectViewList DeveloperPrivateGetItemsInfoFunction::
BackgroundInfo::HasGeneratedBackgroundPage(extension)));
}
- ExtensionService* service = GetProfile()->GetExtensionService();
+ ExtensionService* service = GetExtensionService(GetProfile());
// Repeat for the incognito process, if applicable. Don't try to get
// app windows for incognito process.
if (service->profile()->HasOffTheRecordProfile() &&
@@ -724,8 +727,8 @@ bool DeveloperPrivateReloadFunction::RunSync() {
scoped_ptr<Reload::Params> params(Reload::Params::Create(*args_));
EXTENSION_FUNCTION_VALIDATE(params.get());
- ExtensionService* service = GetProfile()->GetExtensionService();
CHECK(!params->item_id.empty());
+ ExtensionService* service = GetExtensionService(GetProfile());
service->ReloadExtension(params->item_id);
return true;
}
@@ -765,12 +768,12 @@ DeveloperPrivateReloadFunction::~DeveloperPrivateReloadFunction() {}
// This is called when the user clicks "Revoke File Access."
void DeveloperPrivateShowPermissionsDialogFunction::InstallUIProceed() {
- apps::SavedFilesService::Get(GetProfile())
- ->ClearQueue(GetProfile()->GetExtensionService()->GetExtensionById(
- extension_id_, true));
- if (apps::AppRestoreService::Get(GetProfile())
- ->IsAppRestorable(extension_id_))
- apps::AppLoadService::Get(GetProfile())->RestartApplication(extension_id_);
+ Profile* profile = GetProfile();
+ const Extension* extension = ExtensionRegistry::Get(
+ profile)->GetExtensionById(extension_id_, ExtensionRegistry::EVERYTHING);
+ apps::SavedFilesService::Get(profile)->ClearQueue(extension);
+ if (apps::AppRestoreService::Get(profile)->IsAppRestorable(extension_id_))
+ apps::AppLoadService::Get(profile)->RestartApplication(extension_id_);
SendResponse(true);
Release();
}
@@ -796,8 +799,8 @@ bool DeveloperPrivateEnableFunction::RunSync() {
std::string extension_id = params->item_id;
const Extension* extension =
- ExtensionRegistry::Get(GetProfile())
- ->GetExtensionById(extension_id, ExtensionRegistry::EVERYTHING);
+ ExtensionRegistry::Get(GetProfile())->GetExtensionById(
+ extension_id, ExtensionRegistry::EVERYTHING);
if (!extension) {
LOG(ERROR) << "Did not find extension with id " << extension_id;
return false;
@@ -857,8 +860,7 @@ void DeveloperPrivateEnableFunction::OnRequirementsChecked(
const std::string& extension_id,
std::vector<std::string> requirements_errors) {
if (requirements_errors.empty()) {
- ExtensionService* service = GetProfile()->GetExtensionService();
- service->EnableExtension(extension_id);
+ GetExtensionService(GetProfile())->EnableExtension(extension_id);
} else {
ExtensionErrorReporter::GetInstance()->ReportError(
base::UTF8ToUTF16(JoinString(requirements_errors, ' ')),
@@ -881,12 +883,8 @@ bool DeveloperPrivateInspectFunction::RunSync() {
if (render_process_id == -1) {
// This is a lazy background page. Identify if it is a normal
// or incognito background page.
- ExtensionService* service = GetProfile()->GetExtensionService();
- if (options.incognito)
- service = ExtensionSystem::Get(
- service->profile()->GetOffTheRecordProfile())->extension_service();
- const Extension* extension = service->extensions()->GetByID(
- options.extension_id);
+ const Extension* extension = ExtensionRegistry::Get(
+ GetProfile())->enabled_extensions().GetByID(options.extension_id);
DCHECK(extension);
// Wakes up the background page and opens the inspect window.
devtools_util::InspectBackgroundPage(extension, GetProfile());
@@ -926,7 +924,7 @@ bool DeveloperPrivateLoadUnpackedFunction::RunAsync() {
void DeveloperPrivateLoadUnpackedFunction::FileSelected(
const base::FilePath& path) {
- ExtensionService* service = GetProfile()->GetExtensionService();
+ ExtensionService* service = GetExtensionService(GetProfile());
UnpackedInstaller::Create(service)->Load(path);
DeveloperPrivateAPI::Get(GetProfile())->SetLastUnpackedDirectory(path);
SendResponse(true);
@@ -1094,7 +1092,7 @@ bool DeveloperPrivateLoadDirectoryFunction::RunAsync() {
project_base_url_ = directory_url_str.substr(0, pos + 1);
base::FilePath project_path(GetProfile()->GetPath());
- project_path = project_path.Append(kUnpackedAppsFolder);
+ project_path = project_path.AppendASCII(kUnpackedAppsFolder);
project_path = project_path.Append(
base::FilePath::FromUTF8Unsafe(project_name));
@@ -1121,7 +1119,7 @@ bool DeveloperPrivateLoadDirectoryFunction::RunAsync() {
}
void DeveloperPrivateLoadDirectoryFunction::Load() {
- ExtensionService* service = GetProfile()->GetExtensionService();
+ ExtensionService* service = GetExtensionService(GetProfile());
UnpackedInstaller::Create(service)->Load(project_base_path_);
// TODO(grv) : The unpacked installer should fire an event when complete
@@ -1134,7 +1132,7 @@ void DeveloperPrivateLoadDirectoryFunction::ClearExistingDirectoryContent(
const base::FilePath& project_path) {
// Clear the project directory before copying new files.
- base::DeleteFile(project_path, true/*recursive*/);
+ base::DeleteFile(project_path, true /*recursive*/);
pending_copy_operations_count_ = 1;
diff --git a/chrome/browser/extensions/api/management/management_api.cc b/chrome/browser/extensions/api/management/management_api.cc
index 489a25e..b8f7c06 100644
--- a/chrome/browser/extensions/api/management/management_api.cc
+++ b/chrome/browser/extensions/api/management/management_api.cc
@@ -287,11 +287,11 @@ void AddExtensionInfo(const ExtensionSet& extensions,
} // namespace
ExtensionService* ManagementFunction::service() {
- return GetProfile()->GetExtensionService();
+ return extensions::ExtensionSystem::Get(GetProfile())->extension_service();
}
ExtensionService* AsyncManagementFunction::service() {
- return GetProfile()->GetExtensionService();
+ return extensions::ExtensionSystem::Get(GetProfile())->extension_service();
}
bool ManagementGetAllFunction::RunSync() {
@@ -665,7 +665,6 @@ void ManagementUninstallFunctionBase::Finish(bool should_uninstall) {
keys::kUninstallCanceledError, extension_id_);
SendResponse(false);
}
-
}
void ManagementUninstallFunctionBase::ExtensionUninstallAccepted() {
diff --git a/chrome/browser/extensions/api/media_galleries_private/gallery_watch_state_tracker.cc b/chrome/browser/extensions/api/media_galleries_private/gallery_watch_state_tracker.cc
index a7b4e72..2c4f4e7 100644
--- a/chrome/browser/extensions/api/media_galleries_private/gallery_watch_state_tracker.cc
+++ b/chrome/browser/extensions/api/media_galleries_private/gallery_watch_state_tracker.cc
@@ -16,7 +16,6 @@
#include "chrome/browser/extensions/api/media_galleries_private/gallery_watch_manager.h"
#include "chrome/browser/extensions/api/media_galleries_private/media_galleries_private_api.h"
#include "chrome/browser/extensions/api/media_galleries_private/media_galleries_private_event_router.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/state_store.h"
#include "chrome/browser/media_galleries/media_file_system_registry.h"
#include "chrome/browser/media_galleries/media_galleries_preferences.h"
@@ -63,10 +62,8 @@ scoped_ptr<base::ListValue> WatchedGalleryIdsToValue(
// Looks up an extension by ID. Does not include disabled extensions.
const Extension* GetExtensionById(Profile* profile,
const std::string& extension_id) {
- ExtensionService* service = profile->GetExtensionService();
- if (!service)
- return NULL;
- return service->GetExtensionById(extension_id, false);
+ return ExtensionRegistry::Get(profile)->enabled_extensions().GetByID(
+ extension_id);
}
} // namespace
diff --git a/chrome/browser/extensions/api/tab_capture/tab_capture_apitest.cc b/chrome/browser/extensions/api/tab_capture/tab_capture_apitest.cc
index 17b2922..9af7934 100644
--- a/chrome/browser/extensions/api/tab_capture/tab_capture_apitest.cc
+++ b/chrome/browser/extensions/api/tab_capture/tab_capture_apitest.cc
@@ -4,30 +4,27 @@
#include "base/basictypes.h"
#include "base/command_line.h"
-#if defined(OS_MACOSX)
-#include "base/mac/mac_util.h"
-#endif
#include "base/strings/stringprintf.h"
-#include "base/win/windows_version.h"
#include "chrome/browser/extensions/extension_apitest.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/extension_test_message_listener.h"
#include "chrome/browser/extensions/tab_helper.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/fullscreen/fullscreen_controller.h"
-#include "chrome/common/chrome_switches.h"
#include "chrome/common/chrome_version_info.h"
-#include "chrome/test/base/test_switches.h"
#include "content/public/browser/render_process_host.h"
#include "content/public/browser/render_view_host.h"
-#include "content/public/common/content_switches.h"
-#include "extensions/common/feature_switch.h"
-#include "extensions/common/features/base_feature_provider.h"
-#include "extensions/common/features/complex_feature.h"
-#include "extensions/common/features/feature.h"
-#include "extensions/common/features/simple_feature.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/common/switches.h"
-#include "ui/compositor/compositor_switches.h"
+
+#if defined(OS_WIN)
+#include "base/win/windows_version.h"
+#endif
+
+#if defined(OS_WIN) && defined(USE_ASH)
+#include "chrome/test/base/test_switches.h"
+#endif
+
+namespace extensions {
namespace {
@@ -37,7 +34,7 @@ class TabCaptureApiTest : public ExtensionApiTest {
public:
void AddExtensionToCommandLineWhitelist() {
CommandLine::ForCurrentProcess()->AppendSwitchASCII(
- extensions::switches::kWhitelistedExtensionID, kExtensionId);
+ switches::kWhitelistedExtensionID, kExtensionId);
}
};
@@ -49,12 +46,10 @@ class TabCaptureApiPixelTest : public TabCaptureApiTest {
}
};
-} // namespace
-
IN_PROC_BROWSER_TEST_F(TabCaptureApiTest, ApiTests) {
#if defined(OS_WIN) && defined(USE_ASH)
// Disable this test in Metro+Ash for now (http://crbug.com/262796).
- if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kAshBrowserTests))
+ if (CommandLine::ForCurrentProcess()->HasSwitch(::switches::kAshBrowserTests))
return;
#endif
@@ -163,12 +158,10 @@ IN_PROC_BROWSER_TEST_F(TabCaptureApiTest, MAYBE_ActiveTabPermission) {
// Grant permission and make sure capture succeeds.
EXPECT_TRUE(before_grant_permission.WaitUntilSatisfied());
- ExtensionService* extension_service =
- Profile::FromBrowserContext(web_contents->GetBrowserContext())
- ->GetExtensionService();
- const extensions::Extension* extension =
- extension_service->GetExtensionById(kExtensionId, false);
- extensions::TabHelper::FromWebContents(web_contents)
+ const Extension* extension = ExtensionRegistry::Get(
+ web_contents->GetBrowserContext())->enabled_extensions().GetByID(
+ kExtensionId);
+ TabHelper::FromWebContents(web_contents)
->active_tab_permission_granter()->GrantIfRequested(extension);
before_grant_permission.Reply("");
@@ -259,12 +252,11 @@ IN_PROC_BROWSER_TEST_F(TabCaptureApiTest, MAYBE_GrantForChromePages) {
NEW_FOREGROUND_TAB,
content::PAGE_TRANSITION_LINK, false);
content::WebContents* web_contents = browser()->OpenURL(params);
- ExtensionService* extension_service =
- Profile::FromBrowserContext(web_contents->GetBrowserContext())
- ->GetExtensionService();
- extensions::TabHelper::FromWebContents(web_contents)
- ->active_tab_permission_granter()->GrantIfRequested(
- extension_service->GetExtensionById(kExtensionId, false));
+ const Extension* extension = ExtensionRegistry::Get(
+ web_contents->GetBrowserContext())->enabled_extensions().GetByID(
+ kExtensionId);
+ TabHelper::FromWebContents(web_contents)
+ ->active_tab_permission_granter()->GrantIfRequested(extension);
before_open_tab.Reply("");
ResultCatcher catcher;
@@ -297,3 +289,7 @@ IN_PROC_BROWSER_TEST_F(TabCaptureApiTest, MAYBE_Constraints) {
ASSERT_TRUE(RunExtensionSubtest("tab_capture", "constraints.html"))
<< message_;
}
+
+} // namespace
+
+} // namespace extensions
diff --git a/chrome/browser/extensions/api/terminal/terminal_extension_helper.cc b/chrome/browser/extensions/api/terminal/terminal_extension_helper.cc
index 9b51433..ef3a201 100644
--- a/chrome/browser/extensions/api/terminal/terminal_extension_helper.cc
+++ b/chrome/browser/extensions/api/terminal/terminal_extension_helper.cc
@@ -4,19 +4,21 @@
#include "chrome/browser/extensions/api/terminal/terminal_extension_helper.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/common/extensions/extension_constants.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/common/extension.h"
+namespace extensions {
+
namespace {
const char kCroshExtensionEntryPoint[] = "/html/crosh.html";
-const extensions::Extension* GetTerminalExtension(Profile* profile) {
+const Extension* GetTerminalExtension(Profile* profile) {
// Search order for terminal extensions.
// We prefer hterm-dev, then hterm, then the builtin crosh extension.
- static const char* kPossibleAppIds[] = {
+ static const char* const kPossibleAppIds[] = {
extension_misc::kHTermDevAppId,
extension_misc::kHTermAppId,
extension_misc::kCroshBuiltinAppId,
@@ -25,10 +27,11 @@ const extensions::Extension* GetTerminalExtension(Profile* profile) {
// The hterm-dev should be first in the list.
DCHECK_EQ(kPossibleAppIds[0], extension_misc::kHTermDevAppId);
- ExtensionService* service = profile->GetExtensionService();
- for (size_t x = 0; x < arraysize(kPossibleAppIds); ++x) {
- const extensions::Extension* extension = service->GetExtensionById(
- kPossibleAppIds[x], false);
+ const ExtensionSet& extensions =
+ ExtensionRegistry::Get(profile)->enabled_extensions();
+ for (size_t i = 0; i < arraysize(kPossibleAppIds); ++i) {
+ const extensions::Extension* extension =
+ extensions.GetByID(kPossibleAppIds[i]);
if (extension)
return extension;
}
@@ -38,14 +41,12 @@ const extensions::Extension* GetTerminalExtension(Profile* profile) {
} // namespace
-namespace extensions {
-
GURL TerminalExtensionHelper::GetCroshExtensionURL(Profile* profile) {
+ GURL url;
const extensions::Extension* extension = GetTerminalExtension(profile);
- if (!extension)
- return GURL();
-
- return extension->GetResourceURL(kCroshExtensionEntryPoint);
+ if (extension)
+ url = extension->GetResourceURL(kCroshExtensionEntryPoint);
+ return url;
}
} // namespace extensions
diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_apitest.cc b/chrome/browser/extensions/api/webstore_private/webstore_private_apitest.cc
index 0d78574..34db2a3 100644
--- a/chrome/browser/extensions/api/webstore_private/webstore_private_apitest.cc
+++ b/chrome/browser/extensions/api/webstore_private/webstore_private_apitest.cc
@@ -37,6 +37,7 @@
#include "content/public/browser/notification_observer.h"
#include "content/public/browser/notification_registrar.h"
#include "content/public/test/browser_test_utils.h"
+#include "extensions/browser/extension_system.h"
#include "gpu/config/gpu_feature_type.h"
#include "gpu/config/gpu_info.h"
#include "net/dns/mock_host_resolver.h"
@@ -222,7 +223,7 @@ class ExtensionWebstorePrivateApiTest : public ExtensionApiTest {
}
ExtensionService* service() {
- return browser()->profile()->GetExtensionService();
+ return ExtensionSystem::Get(browser()->profile())->extension_service();
}
FakeSigninManagerForTesting* signin_manager_;
@@ -275,7 +276,7 @@ IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest, InstallAccepted) {
}
// Test having the default download directory missing.
- IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest, MissingDownloadDir) {
+IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest, MissingDownloadDir) {
// Set a non-existent directory as the download path.
base::ScopedTempDir temp_dir;
EXPECT_TRUE(temp_dir.CreateUniqueTempDir());
diff --git a/chrome/browser/extensions/chrome_app_api_browsertest.cc b/chrome/browser/extensions/chrome_app_api_browsertest.cc
index 86428bf..13e37c6 100644
--- a/chrome/browser/extensions/chrome_app_api_browsertest.cc
+++ b/chrome/browser/extensions/chrome_app_api_browsertest.cc
@@ -286,15 +286,17 @@ IN_PROC_BROWSER_TEST_F(ChromeAppAPITest, InstallAndRunningState) {
EXPECT_TRUE(IsAppInstalledInMainFrame());
// Disable the extension and verify the state.
- browser()->profile()->GetExtensionService()->DisableExtension(
- extension->id(), Extension::DISABLE_PERMISSIONS_INCREASE);
+ ExtensionService* service = extensions::ExtensionSystem::Get(
+ browser()->profile())->extension_service();
+ service->DisableExtension(extension->id(),
+ Extension::DISABLE_PERMISSIONS_INCREASE);
ui_test_utils::NavigateToURL(browser(), app_url);
EXPECT_EQ("disabled", InstallStateInMainFrame());
EXPECT_EQ("cannot_run", RunningStateInMainFrame());
EXPECT_FALSE(IsAppInstalledInMainFrame());
- browser()->profile()->GetExtensionService()->EnableExtension(extension->id());
+ service->EnableExtension(extension->id());
EXPECT_EQ("installed", InstallStateInMainFrame());
EXPECT_EQ("ready_to_run", RunningStateInMainFrame());
EXPECT_FALSE(IsAppInstalledInMainFrame());
@@ -309,7 +311,6 @@ IN_PROC_BROWSER_TEST_F(ChromeAppAPITest, InstallAndRunningState) {
EXPECT_EQ("installed", InstallStateInIFrame());
EXPECT_EQ("cannot_run", RunningStateInIFrame());
EXPECT_FALSE(IsAppInstalledInIFrame());
-
}
IN_PROC_BROWSER_TEST_F(ChromeAppAPITest, InstallAndRunningStateFrame) {
diff --git a/chrome/browser/extensions/convert_web_app_browsertest.cc b/chrome/browser/extensions/convert_web_app_browsertest.cc
index b53893e..57e8f13 100644
--- a/chrome/browser/extensions/convert_web_app_browsertest.cc
+++ b/chrome/browser/extensions/convert_web_app_browsertest.cc
@@ -21,6 +21,7 @@
#include "content/public/browser/notification_service.h"
#include "content/public/browser/web_contents.h"
#include "content/public/test/browser_test_utils.h"
+#include "extensions/browser/extension_system.h"
#include "extensions/common/extension.h"
#include "extensions/common/extension_icon_set.h"
#include "extensions/common/manifest_handlers/icons_handler.h"
@@ -62,8 +63,9 @@ IN_PROC_BROWSER_TEST_F(ExtensionFromWebAppTest, DISABLED_Basic) {
return;
#endif
- browser()->profile()->GetExtensionService()->set_show_extensions_prompts(
- false);
+ ExtensionService* service =
+ ExtensionSystem::Get(browser()->profile())->extension_service();
+ service->set_show_extensions_prompts(false);
content::NotificationRegistrar registrar;
registrar.Add(this,
diff --git a/chrome/browser/extensions/extension_browsertest.cc b/chrome/browser/extensions/extension_browsertest.cc
index f57284f..b0477b2 100644
--- a/chrome/browser/extensions/extension_browsertest.cc
+++ b/chrome/browser/extensions/extension_browsertest.cc
@@ -455,7 +455,8 @@ const Extension* ExtensionBrowserTest::InstallOrUpdateExtension(
Extension::InitFromValueFlags creation_flags,
bool install_immediately,
bool is_ephemeral) {
- ExtensionService* service = profile()->GetExtensionService();
+ ExtensionService* service =
+ extensions::ExtensionSystem::Get(profile())->extension_service();
service->set_show_extensions_prompts(false);
size_t num_before = service->extensions()->size();
diff --git a/chrome/browser/extensions/extension_context_menu_browsertest.cc b/chrome/browser/extensions/extension_context_menu_browsertest.cc
index 8891138..e13aba9 100644
--- a/chrome/browser/extensions/extension_context_menu_browsertest.cc
+++ b/chrome/browser/extensions/extension_context_menu_browsertest.cc
@@ -5,7 +5,6 @@
#include "base/strings/utf_string_conversions.h"
#include "chrome/app/chrome_command_ids.h"
#include "chrome/browser/extensions/extension_browsertest.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/extension_test_message_listener.h"
#include "chrome/browser/extensions/lazy_background_page_test_util.h"
#include "chrome/browser/profiles/profile.h"
@@ -15,7 +14,7 @@
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/test/base/ui_test_utils.h"
#include "content/public/common/context_menu_params.h"
-#include "extensions/browser/extension_system.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/browser/test_management_policy.h"
#include "extensions/common/extension_set.h"
#include "extensions/common/switches.h"
@@ -67,10 +66,11 @@ class ExtensionContextMenuBrowserTest : public ExtensionBrowserTest {
// Returns a pointer to the currently loaded extension with |name|, or null
// if not found.
const extensions::Extension* GetExtensionNamed(const std::string& name) {
- const extensions::ExtensionSet* extensions =
- browser()->profile()->GetExtensionService()->extensions();
- for (extensions::ExtensionSet::const_iterator i = extensions->begin();
- i != extensions->end(); ++i) {
+ const extensions::ExtensionSet& extensions =
+ extensions::ExtensionRegistry::Get(
+ browser()->profile())->enabled_extensions();
+ for (extensions::ExtensionSet::const_iterator i = extensions.begin();
+ i != extensions.end(); ++i) {
if ((*i)->name() == name) {
return i->get();
}
@@ -140,8 +140,8 @@ class ExtensionContextMenuBrowserTest : public ExtensionBrowserTest {
ASSERT_EQ(!enabled, menu->IsCommandIdEnabled(command_id));
}
- bool MenuHasExtensionItemWithLabel(TestRenderViewContextMenu* menu,
- const std::string& label) {
+ bool MenuHasExtensionItemWithLabel(TestRenderViewContextMenu* menu,
+ const std::string& label) {
base::string16 label16 = base::UTF8ToUTF16(label);
std::map<int, MenuItem::Id>::iterator i;
for (i = menu->extension_items().extension_item_map_.begin();
diff --git a/chrome/browser/extensions/extension_crash_recovery_browsertest.cc b/chrome/browser/extensions/extension_crash_recovery_browsertest.cc
index 5082ded..3f577d7 100644
--- a/chrome/browser/extensions/extension_crash_recovery_browsertest.cc
+++ b/chrome/browser/extensions/extension_crash_recovery_browsertest.cc
@@ -48,7 +48,8 @@ class ExtensionCrashRecoveryTestBase : public ExtensionBrowserTest {
virtual size_t CountBalloons() = 0;
ExtensionService* GetExtensionService() {
- return browser()->profile()->GetExtensionService();
+ return extensions::ExtensionSystem::Get(browser()->profile())->
+ extension_service();
}
extensions::ProcessManager* GetProcessManager() {
@@ -127,8 +128,7 @@ class ExtensionCrashRecoveryTestBase : public ExtensionBrowserTest {
std::string second_extension_id_;
};
-class MAYBE_ExtensionCrashRecoveryTest
- : public ExtensionCrashRecoveryTestBase {
+class MAYBE_ExtensionCrashRecoveryTest : public ExtensionCrashRecoveryTestBase {
protected:
virtual void AcceptNotification(size_t index) OVERRIDE {
message_center::MessageCenter* message_center =
@@ -136,8 +136,8 @@ class MAYBE_ExtensionCrashRecoveryTest
ASSERT_GT(message_center->NotificationCount(), index);
message_center::NotificationList::Notifications::reverse_iterator it =
message_center->GetVisibleNotifications().rbegin();
- for (size_t i=0; i < index; ++i)
- it++;
+ for (size_t i = 0; i < index; ++i)
+ ++it;
std::string id = (*it)->id();
message_center->ClickOnNotification(id);
WaitForExtensionLoad();
@@ -149,7 +149,8 @@ class MAYBE_ExtensionCrashRecoveryTest
ASSERT_GT(message_center->NotificationCount(), index);
message_center::NotificationList::Notifications::reverse_iterator it =
message_center->GetVisibleNotifications().rbegin();
- for (size_t i=0; i < index; i++) { it++; }
+ for (size_t i = 0; i < index; ++i)
+ ++it;
ASSERT_TRUE(g_browser_process->notification_ui_manager()->
CancelById((*it)->id()));
}
diff --git a/chrome/browser/extensions/extension_disabled_ui_browsertest.cc b/chrome/browser/extensions/extension_disabled_ui_browsertest.cc
index 5cd748a..4a523e7 100644
--- a/chrome/browser/extensions/extension_disabled_ui_browsertest.cc
+++ b/chrome/browser/extensions/extension_disabled_ui_browsertest.cc
@@ -22,6 +22,7 @@
#include "content/test/net/url_request_prepackaged_interceptor.h"
#include "extensions/browser/extension_prefs.h"
#include "extensions/browser/extension_registry.h"
+#include "extensions/browser/extension_system.h"
#include "extensions/common/extension.h"
#include "net/url_request/url_fetcher.h"
#include "sync/protocol/extension_specifics.pb.h"
@@ -41,22 +42,24 @@ class ExtensionDisabledGlobalErrorTest : public ExtensionBrowserTest {
virtual void SetUpOnMainThread() OVERRIDE {
EXPECT_TRUE(scoped_temp_dir_.CreateUniqueTempDir());
- service_ = browser()->profile()->GetExtensionService();
+ service_ = extensions::ExtensionSystem::Get(
+ browser()->profile())->extension_service();
registry_ = ExtensionRegistry::Get(browser()->profile());
- base::FilePath pem_path = test_data_dir_.
- AppendASCII("permissions_increase").AppendASCII("permissions.pem");
+ const base::FilePath test_dir =
+ test_data_dir_.AppendASCII("permissions_increase");
+ const base::FilePath pem_path = test_dir.AppendASCII("permissions.pem");
path_v1_ = PackExtensionWithOptions(
- test_data_dir_.AppendASCII("permissions_increase").AppendASCII("v1"),
+ test_dir.AppendASCII("v1"),
scoped_temp_dir_.path().AppendASCII("permissions1.crx"),
pem_path,
base::FilePath());
path_v2_ = PackExtensionWithOptions(
- test_data_dir_.AppendASCII("permissions_increase").AppendASCII("v2"),
+ test_dir.AppendASCII("v2"),
scoped_temp_dir_.path().AppendASCII("permissions2.crx"),
pem_path,
base::FilePath());
path_v3_ = PackExtensionWithOptions(
- test_data_dir_.AppendASCII("permissions_increase").AppendASCII("v3"),
+ test_dir.AppendASCII("v3"),
scoped_temp_dir_.path().AppendASCII("permissions3.crx"),
pem_path,
base::FilePath());
diff --git a/chrome/browser/extensions/extension_functional_browsertest.cc b/chrome/browser/extensions/extension_functional_browsertest.cc
index 21500d1..ec9c0bf 100644
--- a/chrome/browser/extensions/extension_functional_browsertest.cc
+++ b/chrome/browser/extensions/extension_functional_browsertest.cc
@@ -11,11 +11,12 @@
#include "chrome/browser/ui/browser_commands.h"
#include "chrome/test/base/ui_test_utils.h"
#include "content/public/browser/notification_service.h"
+#include "extensions/browser/extension_system.h"
namespace extensions {
class ExtensionFunctionalTest : public ExtensionBrowserTest {
-public:
+ public:
void InstallExtensionSilently(ExtensionService* service,
const char* filename) {
service->set_show_extensions_prompts(false);
@@ -50,16 +51,19 @@ public:
last_loaded_extension_id(), false);
EXPECT_TRUE(extension != NULL);
}
+
+ ExtensionService* GetExtensionService() {
+ return ExtensionSystem::Get(profile())->extension_service();
+ }
};
IN_PROC_BROWSER_TEST_F(ExtensionFunctionalTest,
PRE_TestAdblockExtensionCrash) {
- ExtensionService* service = profile()->GetExtensionService();
- InstallExtensionSilently(service, "adblock.crx");
+ InstallExtensionSilently(GetExtensionService(), "adblock.crx");
}
IN_PROC_BROWSER_TEST_F(ExtensionFunctionalTest, TestAdblockExtensionCrash) {
- ExtensionService* service = profile()->GetExtensionService();
+ ExtensionService* service = GetExtensionService();
// Verify that the extension is enabled and allowed in incognito
// is disabled.
EXPECT_TRUE(service->IsExtensionEnabled(last_loaded_extension_id()));
@@ -67,11 +71,11 @@ IN_PROC_BROWSER_TEST_F(ExtensionFunctionalTest, TestAdblockExtensionCrash) {
}
IN_PROC_BROWSER_TEST_F(ExtensionFunctionalTest, TestSetExtensionsState) {
- ExtensionService* service = profile()->GetExtensionService();
- InstallExtensionSilently(service, "google_talk.crx");
+ InstallExtensionSilently(GetExtensionService(), "google_talk.crx");
// Disable the extension and verify.
util::SetIsIncognitoEnabled(last_loaded_extension_id(), profile(), false);
+ ExtensionService* service = GetExtensionService();
service->DisableExtension(last_loaded_extension_id(),
Extension::DISABLE_USER_ACTION);
EXPECT_FALSE(service->IsExtensionEnabled(last_loaded_extension_id()));
diff --git a/chrome/browser/extensions/extension_message_bubble_controller_unittest.cc b/chrome/browser/extensions/extension_message_bubble_controller_unittest.cc
index b33c31b..082d662 100644
--- a/chrome/browser/extensions/extension_message_bubble_controller_unittest.cc
+++ b/chrome/browser/extensions/extension_message_bubble_controller_unittest.cc
@@ -24,6 +24,7 @@
#include "extensions/browser/extension_pref_value_map_factory.h"
#include "extensions/browser/extension_prefs.h"
#include "extensions/browser/extension_registry.h"
+#include "extensions/browser/extension_system.h"
#include "extensions/common/extension.h"
#include "extensions/common/extension_builder.h"
#include "extensions/common/feature_switch.h"
@@ -394,7 +395,7 @@ class ExtensionMessageBubbleTest : public testing::Test {
CommandLine::ForCurrentProcess(),
base::FilePath(),
false);
- service_ = profile_->GetExtensionService();
+ service_ = ExtensionSystem::Get(profile())->extension_service();
service_->Init();
}
diff --git a/chrome/browser/extensions/extension_web_ui.cc b/chrome/browser/extensions/extension_web_ui.cc
index 4b395dc..d75eaae 100644
--- a/chrome/browser/extensions/extension_web_ui.cc
+++ b/chrome/browser/extensions/extension_web_ui.cc
@@ -13,7 +13,6 @@
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/extensions/api/bookmark_manager_private/bookmark_manager_private_api.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/extension_tab_util.h"
#include "chrome/browser/extensions/extension_util.h"
#include "chrome/browser/favicon/favicon_service.h"
@@ -155,9 +154,8 @@ ExtensionWebUI::ExtensionWebUI(content::WebUI* web_ui, const GURL& url)
: WebUIController(web_ui),
url_(url) {
Profile* profile = Profile::FromWebUI(web_ui);
- ExtensionService* service = profile->GetExtensionService();
- const Extension* extension =
- service->extensions()->GetExtensionOrAppByURL(url);
+ const Extension* extension = extensions::ExtensionRegistry::Get(
+ profile)->enabled_extensions().GetExtensionOrAppByURL(url);
DCHECK(extension);
// The base class defaults to enabling WebUI bindings, but we don't need
@@ -407,14 +405,8 @@ void ExtensionWebUI::GetFaviconForURL(
Profile* profile,
const GURL& page_url,
const favicon_base::FaviconResultsCallback& callback) {
- // Even when the extensions service is enabled by default, it's still
- // disabled in incognito mode.
- ExtensionService* service = profile->GetExtensionService();
- if (!service) {
- RunFaviconCallbackAsync(callback, gfx::Image());
- return;
- }
- const Extension* extension = service->extensions()->GetByID(page_url.host());
+ const Extension* extension = extensions::ExtensionRegistry::Get(
+ profile)->enabled_extensions().GetByID(page_url.host());
if (!extension) {
RunFaviconCallbackAsync(callback, gfx::Image());
return;
diff --git a/chrome/browser/extensions/extension_web_ui_unittest.cc b/chrome/browser/extensions/extension_web_ui_unittest.cc
index 9596fc6..7d69656 100644
--- a/chrome/browser/extensions/extension_web_ui_unittest.cc
+++ b/chrome/browser/extensions/extension_web_ui_unittest.cc
@@ -9,6 +9,7 @@
#include "chrome/browser/extensions/test_extension_system.h"
#include "chrome/test/base/testing_profile.h"
#include "content/public/test/test_browser_thread.h"
+#include "extensions/browser/extension_system.h"
#include "extensions/common/extension.h"
#include "extensions/common/extension_builder.h"
#include "extensions/common/manifest_constants.h"
@@ -57,18 +58,18 @@ class ExtensionWebUITest : public testing::Test {
// non-component extension url overrides.
TEST_F(ExtensionWebUITest, ExtensionURLOverride) {
// Register a non-component extension.
- extensions::DictionaryBuilder manifest;
+ DictionaryBuilder manifest;
manifest.Set(manifest_keys::kName, "ext1")
.Set(manifest_keys::kVersion, "0.1")
.Set(std::string(manifest_keys::kChromeURLOverrides),
- extensions::DictionaryBuilder().Set("bookmarks", "1.html"));
+ DictionaryBuilder().Set("bookmarks", "1.html"));
scoped_refptr<Extension> ext_unpacked(
- extensions::ExtensionBuilder()
+ ExtensionBuilder()
.SetManifest(manifest)
.SetLocation(Manifest::UNPACKED)
.SetID("abcdefghijabcdefghijabcdefghijaa")
.Build());
- profile_->GetExtensionService()->AddExtension(ext_unpacked.get());
+ extension_service_->AddExtension(ext_unpacked.get());
GURL expected_unpacked_override_url(std::string(ext_unpacked->url().spec()) +
"1.html");
@@ -77,18 +78,18 @@ TEST_F(ExtensionWebUITest, ExtensionURLOverride) {
EXPECT_EQ(url, expected_unpacked_override_url);
// Register a component extension
- extensions::DictionaryBuilder manifest2;
+ DictionaryBuilder manifest2;
manifest2.Set(manifest_keys::kName, "ext2")
.Set(manifest_keys::kVersion, "0.1")
.Set(std::string(manifest_keys::kChromeURLOverrides),
- extensions::DictionaryBuilder().Set("bookmarks", "2.html"));
+ DictionaryBuilder().Set("bookmarks", "2.html"));
scoped_refptr<Extension> ext_component(
- extensions::ExtensionBuilder()
+ ExtensionBuilder()
.SetManifest(manifest2)
.SetLocation(Manifest::COMPONENT)
.SetID("bbabcdefghijabcdefghijabcdefghij")
.Build());
- profile_->GetExtensionService()->AddComponentExtension(ext_component.get());
+ extension_service_->AddComponentExtension(ext_component.get());
// Despite being registered more recently, the component extension should
// not take precedence over the non-component extension.
diff --git a/chrome/browser/extensions/isolated_app_browsertest.cc b/chrome/browser/extensions/isolated_app_browsertest.cc
index 26187c2..ca76039 100644
--- a/chrome/browser/extensions/isolated_app_browsertest.cc
+++ b/chrome/browser/extensions/isolated_app_browsertest.cc
@@ -5,8 +5,6 @@
#include "base/strings/stringprintf.h"
#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/extensions/extension_apitest.h"
-#include "chrome/browser/extensions/extension_service.h"
-#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_commands.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
@@ -18,6 +16,7 @@
#include "content/public/browser/web_contents.h"
#include "content/public/test/browser_test_utils.h"
#include "extensions/browser/extension_host.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/browser/process_map.h"
#include "extensions/common/switches.h"
#include "net/dns/mock_host_resolver.h"
@@ -28,8 +27,10 @@
using content::ExecuteScript;
using content::ExecuteScriptAndExtractString;
using content::NavigationController;
-using content::WebContents;
using content::RenderViewHost;
+using content::WebContents;
+
+namespace extensions {
namespace {
@@ -107,35 +108,29 @@ class IsolatedAppTest : public ExtensionBrowserTest {
return actual_cookie.find(cookie) != std::string::npos;
}
- const extensions::Extension* GetInstalledApp(WebContents* contents) {
- const extensions::Extension* installed_app = NULL;
- Profile* profile =
- Profile::FromBrowserContext(contents->GetBrowserContext());
- ExtensionService* service = profile->GetExtensionService();
- if (service) {
- std::set<std::string> extension_ids =
- extensions::ProcessMap::Get(profile)->GetExtensionsInProcess(
- contents->GetRenderViewHost()->GetProcess()->GetID());
- for (std::set<std::string>::iterator iter = extension_ids.begin();
- iter != extension_ids.end(); ++iter) {
- installed_app = service->extensions()->GetByID(*iter);
- if (installed_app && installed_app->is_app())
- return installed_app;
- }
+ const Extension* GetInstalledApp(WebContents* contents) {
+ content::BrowserContext* browser_context = contents->GetBrowserContext();
+ ExtensionRegistry* registry = ExtensionRegistry::Get(browser_context);
+ std::set<std::string> extension_ids =
+ ProcessMap::Get(browser_context)->GetExtensionsInProcess(
+ contents->GetRenderViewHost()->GetProcess()->GetID());
+ for (std::set<std::string>::iterator iter = extension_ids.begin();
+ iter != extension_ids.end(); ++iter) {
+ const Extension* installed_app =
+ registry->enabled_extensions().GetByID(*iter);
+ if (installed_app && installed_app->is_app())
+ return installed_app;
}
return NULL;
}
private:
- virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
+ virtual void SetUpCommandLine(base::CommandLine* command_line) OVERRIDE {
ExtensionBrowserTest::SetUpCommandLine(command_line);
- command_line->AppendSwitch(
- extensions::switches::kEnableExperimentalExtensionApis);
+ command_line->AppendSwitch(switches::kEnableExperimentalExtensionApis);
}
};
-} // namespace
-
IN_PROC_BROWSER_TEST_F(IsolatedAppTest, CrossProcessClientRedirect) {
host_resolver()->AddRule("*", "127.0.0.1");
ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady());
@@ -304,7 +299,6 @@ IN_PROC_BROWSER_TEST_F(IsolatedAppTest, MAYBE_CookieIsolation) {
EXPECT_TRUE(HasCookie(tab0, "app1=3"));
EXPECT_FALSE(HasCookie(tab0, "app2"));
EXPECT_FALSE(HasCookie(tab0, "normalPage"));
-
}
// This test is disabled due to being flaky. http://crbug.com/145588
@@ -595,3 +589,7 @@ IN_PROC_BROWSER_TEST_F(IsolatedAppTest, DISABLED_SessionStorage) {
kRetrieveSessionStorage.c_str(), &result));
EXPECT_EQ("ss_normal", result);
}
+
+} // namespace
+
+} // namespace extensions
diff --git a/chrome/browser/extensions/tab_helper.cc b/chrome/browser/extensions/tab_helper.cc
index e6ad1bc..43df23d 100644
--- a/chrome/browser/extensions/tab_helper.cc
+++ b/chrome/browser/extensions/tab_helper.cc
@@ -219,7 +219,7 @@ SkBitmap* TabHelper::GetExtensionAppIcon() {
}
void TabHelper::FinishCreateBookmarkApp(
- const extensions::Extension* extension,
+ const Extension* extension,
const WebApplicationInfo& web_app_info) {
pending_web_app_action_ = NONE;
@@ -370,7 +370,8 @@ void TabHelper::OnDidGetApplicationInfo(int32 page_id,
web_app_info_.title = base::UTF8ToUTF16(web_app_info_.app_url.spec());
bookmark_app_helper_.reset(new BookmarkAppHelper(
- profile_->GetExtensionService(), web_app_info_, web_contents()));
+ ExtensionSystem::Get(profile_)->extension_service(),
+ web_app_info_, web_contents()));
bookmark_app_helper_->Create(base::Bind(
&TabHelper::FinishCreateBookmarkApp, base::Unretained(this)));
break;
@@ -499,15 +500,9 @@ const Extension* TabHelper::GetExtension(const std::string& extension_app_id) {
if (extension_app_id.empty())
return NULL;
- Profile* profile =
- Profile::FromBrowserContext(web_contents()->GetBrowserContext());
- ExtensionService* extension_service = profile->GetExtensionService();
- if (!extension_service || !extension_service->is_ready())
- return NULL;
-
- const Extension* extension =
- extension_service->GetExtensionById(extension_app_id, false);
- return extension;
+ content::BrowserContext* context = web_contents()->GetBrowserContext();
+ return ExtensionRegistry::Get(context)->enabled_extensions().GetByID(
+ extension_app_id);
}
void TabHelper::UpdateExtensionAppIcon(const Extension* extension) {
@@ -519,7 +514,7 @@ void TabHelper::UpdateExtensionAppIcon(const Extension* extension) {
if (extension) {
Profile* profile =
Profile::FromBrowserContext(web_contents()->GetBrowserContext());
- extensions::ImageLoader* loader = extensions::ImageLoader::Get(profile);
+ ImageLoader* loader = ImageLoader::Get(profile);
loader->LoadImageAsync(
extension,
IconsInfo::GetIconResource(extension,
diff --git a/chrome/browser/extensions/theme_installed_infobar_delegate.cc b/chrome/browser/extensions/theme_installed_infobar_delegate.cc
index e3f5c8c..398dae3 100644
--- a/chrome/browser/extensions/theme_installed_infobar_delegate.cc
+++ b/chrome/browser/extensions/theme_installed_infobar_delegate.cc
@@ -17,6 +17,7 @@
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "components/infobars/core/infobar.h"
#include "content/public/browser/notification_source.h"
+#include "extensions/browser/extension_system.h"
#include "extensions/common/extension.h"
#include "grit/generated_resources.h"
#include "grit/theme_resources.h"
@@ -51,7 +52,8 @@ void ThemeInstalledInfoBarDelegate::Create(
scoped_ptr<infobars::InfoBar> new_infobar(
ConfirmInfoBarDelegate::CreateInfoBar(scoped_ptr<ConfirmInfoBarDelegate>(
new ThemeInstalledInfoBarDelegate(
- profile->GetExtensionService(), theme_service, new_theme,
+ extensions::ExtensionSystem::Get(profile)->extension_service(),
+ theme_service, new_theme,
previous_theme_id, previous_using_system_theme))));
// If there's a previous theme infobar, just replace that instead of adding a
diff --git a/chrome/browser/extensions/user_script_listener.cc b/chrome/browser/extensions/user_script_listener.cc
index 96b94fc..4b3be2a 100644
--- a/chrome/browser/extensions/user_script_listener.cc
+++ b/chrome/browser/extensions/user_script_listener.cc
@@ -6,13 +6,13 @@
#include "base/bind.h"
#include "chrome/browser/chrome_notification_types.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/common/extensions/manifest_handlers/content_scripts_handler.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/notification_service.h"
#include "content/public/browser/resource_controller.h"
#include "content/public/browser/resource_throttle.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/common/extension.h"
#include "extensions/common/url_pattern.h"
#include "net/url_request/url_request.h"
@@ -232,10 +232,11 @@ void UserScriptListener::Observe(int type,
return; // no patterns to delete for this extension.
// Clear all our patterns and reregister all the still-loaded extensions.
+ const ExtensionSet& extensions =
+ ExtensionRegistry::Get(profile)->enabled_extensions();
URLPatterns new_patterns;
- ExtensionService* service = profile->GetExtensionService();
- for (ExtensionSet::const_iterator it = service->extensions()->begin();
- it != service->extensions()->end(); ++it) {
+ for (ExtensionSet::const_iterator it = extensions.begin();
+ it != extensions.end(); ++it) {
if (it->get() != unloaded_extension)
CollectURLPatterns(it->get(), &new_patterns);
}
diff --git a/chrome/browser/extensions/webstore_startup_installer_browsertest.cc b/chrome/browser/extensions/webstore_startup_installer_browsertest.cc
index d57b066..7dcd1dd 100644
--- a/chrome/browser/extensions/webstore_startup_installer_browsertest.cc
+++ b/chrome/browser/extensions/webstore_startup_installer_browsertest.cc
@@ -23,6 +23,7 @@
#include "content/public/browser/web_contents.h"
#include "content/public/test/browser_test_utils.h"
#include "extensions/browser/extension_host.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/browser/extension_system.h"
#include "extensions/common/extension_builder.h"
#include "extensions/common/value_builder.h"
@@ -62,8 +63,9 @@ IN_PROC_BROWSER_TEST_F(WebstoreStartupInstallerTest, Install) {
RunTest("runTest");
- const extensions::Extension* extension = browser()->profile()->
- GetExtensionService()->GetExtensionById(kTestExtensionId, false);
+ const extensions::Extension* extension =
+ extensions::ExtensionRegistry::Get(
+ browser()->profile())->enabled_extensions().GetByID(kTestExtensionId);
EXPECT_TRUE(extension);
}
diff --git a/chrome/browser/first_run/first_run.cc b/chrome/browser/first_run/first_run.cc
index 4ff2c5d..eee0b03 100644
--- a/chrome/browser/first_run/first_run.cc
+++ b/chrome/browser/first_run/first_run.cc
@@ -62,6 +62,7 @@
#include "content/public/browser/notification_types.h"
#include "content/public/browser/user_metrics.h"
#include "content/public/browser/web_contents.h"
+#include "extensions/browser/extension_system.h"
#include "google_apis/gaia/gaia_auth_util.h"
#include "url/gurl.h"
@@ -137,8 +138,10 @@ class FirstRunDelayedTasks : public content::NotificationObserver {
const content::NotificationDetails& details) OVERRIDE {
// After processing the notification we always delete ourselves.
if (type == chrome::NOTIFICATION_EXTENSIONS_READY) {
- DoExtensionWork(
- content::Source<Profile>(source).ptr()->GetExtensionService());
+ Profile* profile = content::Source<Profile>(source).ptr();
+ ExtensionService* service =
+ extensions::ExtensionSystem::Get(profile)->extension_service();
+ DoExtensionWork(service);
}
delete this;
}
diff --git a/chrome/browser/infobars/infobars_browsertest.cc b/chrome/browser/infobars/infobars_browsertest.cc
index 7465ce5..f8fec63 100644
--- a/chrome/browser/infobars/infobars_browsertest.cc
+++ b/chrome/browser/infobars/infobars_browsertest.cc
@@ -18,6 +18,7 @@
#include "chrome/test/base/test_switches.h"
#include "chrome/test/base/ui_test_utils.h"
#include "content/public/browser/notification_service.h"
+#include "extensions/browser/extension_system.h"
#include "net/test/embedded_test_server/embedded_test_server.h"
class InfoBarsTest : public InProcessBrowserTest {
@@ -33,8 +34,8 @@ class InfoBarsTest : public InProcessBrowserTest {
base::FilePath path = ui_test_utils::GetTestFilePath(
base::FilePath().AppendASCII("extensions"),
base::FilePath().AppendASCII(filename));
- Profile* profile = browser()->profile();
- ExtensionService* service = profile->GetExtensionService();
+ ExtensionService* service = extensions::ExtensionSystem::Get(
+ browser()->profile())->extension_service();
content::WindowedNotificationObserver observer(
chrome::NOTIFICATION_EXTENSION_LOADED_DEPRECATED,
diff --git a/chrome/browser/media/media_stream_capture_indicator.cc b/chrome/browser/media/media_stream_capture_indicator.cc
index 2522a65..c5c4410 100644
--- a/chrome/browser/media/media_stream_capture_indicator.cc
+++ b/chrome/browser/media/media_stream_capture_indicator.cc
@@ -12,7 +12,6 @@
#include "base/strings/utf_string_conversions.h"
#include "chrome/app/chrome_command_ids.h"
#include "chrome/browser/browser_process.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/status_icons/status_icon.h"
#include "chrome/browser/status_icons/status_tray.h"
@@ -25,6 +24,7 @@
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_contents_delegate.h"
#include "content/public/browser/web_contents_observer.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/common/extension.h"
#include "grit/chromium_strings.h"
#include "grit/generated_resources.h"
@@ -45,16 +45,9 @@ const extensions::Extension* GetExtension(WebContents* web_contents) {
if (!web_contents)
return NULL;
- Profile* profile =
- Profile::FromBrowserContext(web_contents->GetBrowserContext());
- if (!profile)
- return NULL;
-
- ExtensionService* extension_service = profile->GetExtensionService();
- if (!extension_service)
- return NULL;
-
- return extension_service->extensions()->GetExtensionOrAppByURL(
+ extensions::ExtensionRegistry* registry =
+ extensions::ExtensionRegistry::Get(web_contents->GetBrowserContext());
+ return registry->enabled_extensions().GetExtensionOrAppByURL(
web_contents->GetURL());
}
diff --git a/chrome/browser/memory_details.cc b/chrome/browser/memory_details.cc
index 3979226..858e193 100644
--- a/chrome/browser/memory_details.cc
+++ b/chrome/browser/memory_details.cc
@@ -24,6 +24,7 @@
#include "content/public/browser/render_widget_host_iterator.h"
#include "content/public/browser/web_contents.h"
#include "content/public/common/bindings_policy.h"
+#include "extensions/browser/extension_system.h"
#include "extensions/browser/process_manager.h"
#include "extensions/browser/process_map.h"
#include "extensions/browser/view_type_utils.h"
@@ -228,14 +229,14 @@ void MemoryDetails::CollectChildInfoOnUIThread() {
continue;
}
process.process_type = content::PROCESS_TYPE_RENDERER;
- Profile* profile =
- Profile::FromBrowserContext(
- render_process_host->GetBrowserContext());
- ExtensionService* extension_service = profile->GetExtensionService();
+ content::BrowserContext* context =
+ render_process_host->GetBrowserContext();
+ ExtensionService* extension_service =
+ extensions::ExtensionSystem::Get(context)->extension_service();
extensions::ProcessMap* extension_process_map = NULL;
// No extensions on Android. So extension_service can be NULL.
if (extension_service)
- extension_process_map = extensions::ProcessMap::Get(profile);
+ extension_process_map = extensions::ProcessMap::Get(context);
// The RenderProcessHost may host multiple WebContentses. Any
// of them which contain diagnostics information make the whole
@@ -478,7 +479,6 @@ void MemoryDetails::UpdateHistograms() {
#if defined(OS_CHROMEOS)
UpdateSwapHistograms();
#endif
-
}
#if defined(OS_CHROMEOS)
diff --git a/chrome/browser/notifications/message_center_settings_controller.cc b/chrome/browser/notifications/message_center_settings_controller.cc
index 3259183..397815f 100644
--- a/chrome/browser/notifications/message_center_settings_controller.cc
+++ b/chrome/browser/notifications/message_center_settings_controller.cc
@@ -14,7 +14,6 @@
#include "chrome/browser/browser_process.h"
#include "chrome/browser/chrome_notification_types.h"
#include "chrome/browser/extensions/app_icon_loader_impl.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/extension_util.h"
#include "chrome/browser/favicon/favicon_service.h"
#include "chrome/browser/favicon/favicon_service_factory.h"
@@ -32,7 +31,7 @@
#include "content/public/browser/notification_service.h"
#include "content/public/browser/notification_source.h"
#include "extensions/browser/event_router.h"
-#include "extensions/browser/extension_system.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/browser/extension_util.h"
#include "extensions/common/constants.h"
#include "extensions/common/extension.h"
@@ -215,9 +214,8 @@ void MessageCenterSettingsController::GetNotifierList(
if (!U_FAILURE(error))
comparator.reset(new NotifierComparator(collator.get()));
- ExtensionService* extension_service = profile->GetExtensionService();
- const extensions::ExtensionSet* extension_set =
- extension_service->extensions();
+ const extensions::ExtensionSet& extension_set =
+ extensions::ExtensionRegistry::Get(profile)->enabled_extensions();
// The extension icon size has to be 32x32 at least to load bigger icons if
// the icon doesn't exist for the specified size, and in that case it falls
// back to the default icon. The fetched icon will be resized in the settings
@@ -225,8 +223,8 @@ void MessageCenterSettingsController::GetNotifierList(
// crbug.com/222931
app_icon_loader_.reset(new extensions::AppIconLoaderImpl(
profile, extension_misc::EXTENSION_ICON_SMALL, this));
- for (extensions::ExtensionSet::const_iterator iter = extension_set->begin();
- iter != extension_set->end();
+ for (extensions::ExtensionSet::const_iterator iter = extension_set.begin();
+ iter != extension_set.end();
++iter) {
const extensions::Extension* extension = iter->get();
if (!extension->permissions_data()->HasAPIPermission(
diff --git a/chrome/browser/performance_monitor/performance_monitor_browsertest.cc b/chrome/browser/performance_monitor/performance_monitor_browsertest.cc
index 96629f9..b773c44 100644
--- a/chrome/browser/performance_monitor/performance_monitor_browsertest.cc
+++ b/chrome/browser/performance_monitor/performance_monitor_browsertest.cc
@@ -40,6 +40,8 @@
#include "content/public/test/browser_test_utils.h"
#include "content/public/test/test_navigation_observer.h"
#include "content/public/test/test_utils.h"
+#include "extensions/browser/extension_registry.h"
+#include "extensions/browser/extension_system.h"
#include "extensions/common/extension.h"
#if defined(OS_CHROMEOS)
@@ -499,8 +501,8 @@ IN_PROC_BROWSER_TEST_F(PerformanceMonitorBrowserTest, UpdateExtensionEvent) {
std::vector<ExtensionBasicInfo> extension_infos;
extension_infos.push_back(ExtensionBasicInfo(extension));
- ExtensionService* extension_service =
- browser()->profile()->GetExtensionService();
+ ExtensionService* extension_service = extensions::ExtensionSystem::Get(
+ browser()->profile())->extension_service();
extensions::CrxInstaller* crx_installer = NULL;
@@ -508,12 +510,13 @@ IN_PROC_BROWSER_TEST_F(PerformanceMonitorBrowserTest, UpdateExtensionEvent) {
content::WindowedNotificationObserver windowed_observer(
chrome::NOTIFICATION_CRX_INSTALLER_DONE,
content::Source<extensions::CrxInstaller>(crx_installer));
- ASSERT_TRUE(extension_service->
- UpdateExtension(extension->id(), path_v2_, true, &crx_installer));
+ ASSERT_TRUE(extension_service->UpdateExtension(
+ extension->id(), path_v2_, true, &crx_installer));
windowed_observer.Wait();
- extension = extension_service->GetExtensionById(
- extension_infos[0].id, false); // don't include disabled extensions.
+ extension = extensions::ExtensionRegistry::Get(
+ browser()->profile())->enabled_extensions().GetByID(
+ extension_infos[0].id);
// The total series of events for this process will be:
// Extension Install - install version 1
diff --git a/chrome/browser/profile_resetter/profile_resetter.cc b/chrome/browser/profile_resetter/profile_resetter.cc
index 17f451f..359130b 100644
--- a/chrome/browser/profile_resetter/profile_resetter.cc
+++ b/chrome/browser/profile_resetter/profile_resetter.cc
@@ -107,15 +107,15 @@ void ProfileResetter::Reset(
Resettable flag;
void (ProfileResetter::*method)();
} flagToMethod[] = {
- {DEFAULT_SEARCH_ENGINE, &ProfileResetter::ResetDefaultSearchEngine},
- {HOMEPAGE, &ProfileResetter::ResetHomepage},
- {CONTENT_SETTINGS, &ProfileResetter::ResetContentSettings},
- {COOKIES_AND_SITE_DATA, &ProfileResetter::ResetCookiesAndSiteData},
- {EXTENSIONS, &ProfileResetter::ResetExtensions},
- {STARTUP_PAGES, &ProfileResetter::ResetStartupPages},
- {PINNED_TABS, &ProfileResetter::ResetPinnedTabs},
- {SHORTCUTS, &ProfileResetter::ResetShortcuts},
- };
+ {DEFAULT_SEARCH_ENGINE, &ProfileResetter::ResetDefaultSearchEngine},
+ {HOMEPAGE, &ProfileResetter::ResetHomepage},
+ {CONTENT_SETTINGS, &ProfileResetter::ResetContentSettings},
+ {COOKIES_AND_SITE_DATA, &ProfileResetter::ResetCookiesAndSiteData},
+ {EXTENSIONS, &ProfileResetter::ResetExtensions},
+ {STARTUP_PAGES, &ProfileResetter::ResetStartupPages},
+ {PINNED_TABS, &ProfileResetter::ResetPinnedTabs},
+ {SHORTCUTS, &ProfileResetter::ResetShortcuts},
+ };
ResettableFlags reset_triggered_for_flags = 0;
for (size_t i = 0; i < ARRAYSIZE_UNSAFE(flagToMethod); ++i) {
@@ -269,7 +269,8 @@ void ProfileResetter::ResetExtensions() {
std::vector<std::string> brandcode_extensions;
master_settings_->GetExtensions(&brandcode_extensions);
- ExtensionService* extension_service = profile_->GetExtensionService();
+ ExtensionService* extension_service =
+ extensions::ExtensionSystem::Get(profile_)->extension_service();
DCHECK(extension_service);
extension_service->DisableUserExtensions(brandcode_extensions);
diff --git a/chrome/browser/profile_resetter/resettable_settings_snapshot.cc b/chrome/browser/profile_resetter/resettable_settings_snapshot.cc
index 555475a..6cc6034 100644
--- a/chrome/browser/profile_resetter/resettable_settings_snapshot.cc
+++ b/chrome/browser/profile_resetter/resettable_settings_snapshot.cc
@@ -10,7 +10,6 @@
#include "base/synchronization/cancellation_flag.h"
#include "base/values.h"
#include "chrome/browser/browser_process.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/search_engines/template_url_service.h"
#include "chrome/browser/search_engines/template_url_service_factory.h"
@@ -20,6 +19,7 @@
#include "components/feedback/feedback_data.h"
#include "components/feedback/feedback_util.h"
#include "content/public/browser/browser_thread.h"
+#include "extensions/browser/extension_registry.h"
#include "grit/generated_resources.h"
#include "grit/google_chrome_strings.h"
#include "ui/base/l10n/l10n_util.h"
@@ -74,13 +74,12 @@ ResettableSettingsSnapshot::ResettableSettingsSnapshot(
if (dse)
dse_url_ = dse->url();
- ExtensionService* extension_service = profile->GetExtensionService();
- DCHECK(extension_service);
- const extensions::ExtensionSet* enabled_ext = extension_service->extensions();
- enabled_extensions_.reserve(enabled_ext->size());
+ const extensions::ExtensionSet& enabled_ext =
+ extensions::ExtensionRegistry::Get(profile)->enabled_extensions();
+ enabled_extensions_.reserve(enabled_ext.size());
- for (extensions::ExtensionSet::const_iterator it = enabled_ext->begin();
- it != enabled_ext->end(); ++it)
+ for (extensions::ExtensionSet::const_iterator it = enabled_ext.begin();
+ it != enabled_ext.end(); ++it)
enabled_extensions_.push_back(std::make_pair((*it)->id(), (*it)->name()));
// ExtensionSet is sorted but it seems to be an implementation detail.
diff --git a/chrome/browser/speech/extension_api/tts_engine_extension_api.cc b/chrome/browser/speech/extension_api/tts_engine_extension_api.cc
index c5b2cc6..e9951df 100644
--- a/chrome/browser/speech/extension_api/tts_engine_extension_api.cc
+++ b/chrome/browser/speech/extension_api/tts_engine_extension_api.cc
@@ -8,7 +8,6 @@
#include "base/json/json_writer.h"
#include "base/values.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/speech/extension_api/tts_extension_api.h"
#include "chrome/browser/speech/extension_api/tts_extension_api_constants.h"
@@ -19,6 +18,7 @@
#include "content/public/common/console_message_level.h"
#include "extensions/browser/event_router.h"
#include "extensions/browser/extension_host.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/browser/extension_system.h"
#include "extensions/browser/process_manager.h"
#include "extensions/common/extension.h"
@@ -40,6 +40,7 @@ const char kOnResume[] = "ttsEngine.onResume";
}; // namespace tts_engine_events
namespace {
+
void WarnIfMissingPauseOrResumeListener(
Profile* profile, EventRouter* event_router, std::string extension_id) {
bool has_onpause = event_router->ExtensionHasEventListener(
@@ -57,21 +58,21 @@ void WarnIfMissingPauseOrResumeListener(
host->render_view_host()->GetRoutingID(),
content::CONSOLE_MESSAGE_LEVEL_WARNING,
constants::kErrorMissingPauseOrResume));
-};
-} // anonymous namespace
+}
+
+} // namespace
void GetExtensionVoices(Profile* profile, std::vector<VoiceData>* out_voices) {
- ExtensionService* service = profile->GetExtensionService();
- DCHECK(service);
EventRouter* event_router = EventRouter::Get(profile);
DCHECK(event_router);
bool is_offline = (net::NetworkChangeNotifier::GetConnectionType() ==
net::NetworkChangeNotifier::CONNECTION_NONE);
- const extensions::ExtensionSet* extensions = service->extensions();
+ const extensions::ExtensionSet& extensions =
+ extensions::ExtensionRegistry::Get(profile)->enabled_extensions();
extensions::ExtensionSet::const_iterator iter;
- for (iter = extensions->begin(); iter != extensions->end(); ++iter) {
+ for (iter = extensions.begin(); iter != extensions.end(); ++iter) {
const Extension* extension = iter->get();
if (!event_router->ExtensionHasEventListener(
diff --git a/chrome/browser/tab_contents/tab_util.cc b/chrome/browser/tab_contents/tab_util.cc
index ae3100a..c6c0849b 100644
--- a/chrome/browser/tab_contents/tab_util.cc
+++ b/chrome/browser/tab_contents/tab_util.cc
@@ -4,13 +4,13 @@
#include "chrome/browser/tab_contents/tab_util.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/webui/chrome_web_ui_controller_factory.h"
#include "chrome/common/chrome_switches.h"
#include "content/public/browser/render_view_host.h"
#include "content/public/browser/site_instance.h"
#include "content/public/browser/web_contents.h"
+#include "extensions/browser/extension_registry.h"
#include "url/gurl.h"
using content::RenderViewHost;
@@ -25,7 +25,6 @@ content::WebContents* GetWebContentsByID(int render_process_id,
RenderViewHost::FromID(render_process_id, render_view_id);
if (!render_view_host)
return NULL;
-
return WebContents::FromRenderViewHost(render_view_host);
}
@@ -33,11 +32,10 @@ SiteInstance* GetSiteInstanceForNewTab(Profile* profile,
const GURL& url) {
// If |url| is a WebUI or extension, we set the SiteInstance up front so that
// we don't end up with an extra process swap on the first navigation.
- ExtensionService* service = profile->GetExtensionService();
if (ChromeWebUIControllerFactory::GetInstance()->UseWebUIForURL(
profile, url) ||
- (service &&
- service->extensions()->GetHostedAppByURL(url))) {
+ extensions::ExtensionRegistry::Get(
+ profile)->enabled_extensions().GetHostedAppByURL(url)) {
return SiteInstance::CreateForURL(profile, url);
}
diff --git a/chrome/browser/task_manager/background_information.cc b/chrome/browser/task_manager/background_information.cc
index e6fcd89..35d0c1d 100644
--- a/chrome/browser/task_manager/background_information.cc
+++ b/chrome/browser/task_manager/background_information.cc
@@ -11,7 +11,6 @@
#include "chrome/browser/background/background_contents_service_factory.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/chrome_notification_types.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/tab_contents/background_contents.h"
@@ -23,6 +22,7 @@
#include "content/public/browser/render_process_host.h"
#include "content/public/browser/render_view_host.h"
#include "content/public/browser/web_contents.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/browser/view_type_utils.h"
#include "extensions/common/extension.h"
#include "grit/generated_resources.h"
@@ -144,7 +144,8 @@ scoped_ptr<RendererResource> BackgroundInformation::MakeResource(
WebContents* web_contents) {
Profile* profile =
Profile::FromBrowserContext(web_contents->GetBrowserContext());
- ExtensionService* extension_service = profile->GetExtensionService();
+ const extensions::ExtensionSet& extensions_set =
+ extensions::ExtensionRegistry::Get(profile)->enabled_extensions();
BackgroundContentsService* background_contents_service =
BackgroundContentsServiceFactory::GetForProfile(profile);
std::vector<BackgroundContents*> contents =
@@ -155,14 +156,12 @@ scoped_ptr<RendererResource> BackgroundInformation::MakeResource(
if ((*iterator)->web_contents() == web_contents) {
base::string16 application_name;
// Lookup the name from the parent extension.
- if (extension_service) {
- const base::string16& application_id =
- background_contents_service->GetParentApplicationId(*iterator);
- const Extension* extension = extension_service->GetExtensionById(
- base::UTF16ToUTF8(application_id), false);
- if (extension)
- application_name = base::UTF8ToUTF16(extension->name());
- }
+ const base::string16& application_id =
+ background_contents_service->GetParentApplicationId(*iterator);
+ const Extension* extension =
+ extensions_set.GetByID(base::UTF16ToUTF8(application_id));
+ if (extension)
+ application_name = base::UTF8ToUTF16(extension->name());
return scoped_ptr<RendererResource>(
new BackgroundContentsResource(*iterator, application_name));
}
diff --git a/chrome/browser/task_manager/panel_information.cc b/chrome/browser/task_manager/panel_information.cc
index aabb0c0..85872e2 100644
--- a/chrome/browser/task_manager/panel_information.cc
+++ b/chrome/browser/task_manager/panel_information.cc
@@ -16,6 +16,7 @@
#include "content/public/browser/render_process_host.h"
#include "content/public/browser/render_view_host.h"
#include "content/public/browser/web_contents.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/browser/view_type_utils.h"
#include "extensions/common/extension.h"
#include "ui/base/l10n/l10n_util.h"
@@ -53,9 +54,10 @@ PanelResource::PanelResource(Panel* panel)
panel->GetWebContents()->GetRenderProcessHost()->GetHandle(),
panel->GetWebContents()->GetRenderViewHost()),
panel_(panel) {
- ExtensionService* service = panel_->profile()->GetExtensionService();
+ extensions::ExtensionRegistry* registry =
+ extensions::ExtensionRegistry::Get(panel_->profile());
message_prefix_id_ = util::GetMessagePrefixID(
- service->extensions()->GetByID(panel_->extension_id())->is_app(),
+ registry->enabled_extensions().GetByID(panel_->extension_id())->is_app(),
true, // is_extension
panel_->profile()->IsOffTheRecord(),
false, // is_prerender
diff --git a/chrome/browser/themes/theme_service_factory.cc b/chrome/browser/themes/theme_service_factory.cc
index bb85541..06c2600 100644
--- a/chrome/browser/themes/theme_service_factory.cc
+++ b/chrome/browser/themes/theme_service_factory.cc
@@ -6,13 +6,13 @@
#include "base/logging.h"
#include "base/prefs/pref_service.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/incognito_helpers.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/themes/theme_service.h"
#include "chrome/common/pref_names.h"
#include "components/keyed_service/content/browser_context_dependency_manager.h"
#include "components/pref_registry/pref_registry_syncable.h"
+#include "extensions/browser/extension_registry.h"
#if defined(USE_AURA) && defined(USE_X11) && !defined(OS_CHROMEOS)
#include "chrome/browser/themes/theme_service_aurax11.h"
@@ -32,7 +32,8 @@ const extensions::Extension* ThemeServiceFactory::GetThemeForProfile(
if (id == ThemeService::kDefaultThemeID)
return NULL;
- return profile->GetExtensionService()->GetExtensionById(id, false);
+ return extensions::ExtensionRegistry::Get(
+ profile)->enabled_extensions().GetByID(id);
}
// static
diff --git a/chrome/browser/ui/app_list/app_list_view_delegate.cc b/chrome/browser/ui/app_list/app_list_view_delegate.cc
index 960f117..2195fe6 100644
--- a/chrome/browser/ui/app_list/app_list_view_delegate.cc
+++ b/chrome/browser/ui/app_list/app_list_view_delegate.cc
@@ -12,7 +12,6 @@
#include "base/stl_util.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/chrome_notification_types.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/profile_info_cache.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/search/hotword_service.h"
@@ -34,6 +33,7 @@
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/page_navigator.h"
#include "content/public/browser/user_metrics.h"
+#include "extensions/browser/extension_registry.h"
#include "grit/theme_resources.h"
#include "ui/app_list/app_list_switches.h"
#include "ui/app_list/app_list_view_delegate_observer.h"
@@ -260,10 +260,9 @@ void AppListViewDelegate::GetShortcutPathForApp(
const std::string& app_id,
const base::Callback<void(const base::FilePath&)>& callback) {
#if defined(OS_WIN)
- ExtensionService* service = profile_->GetExtensionService();
- DCHECK(service);
const extensions::Extension* extension =
- service->GetInstalledExtension(app_id);
+ extensions::ExtensionRegistry::Get(profile_)->GetExtensionById(
+ app_id, extensions::ExtensionRegistry::EVERYTHING);
if (!extension) {
callback.Run(base::FilePath());
return;
@@ -357,10 +356,10 @@ gfx::ImageSkia AppListViewDelegate::GetWindowIcon() {
}
void AppListViewDelegate::OpenSettings() {
- ExtensionService* service = profile_->GetExtensionService();
- DCHECK(service);
- const extensions::Extension* extension = service->GetInstalledExtension(
- extension_misc::kSettingsAppId);
+ const extensions::Extension* extension =
+ extensions::ExtensionRegistry::Get(profile_)->GetExtensionById(
+ extension_misc::kSettingsAppId,
+ extensions::ExtensionRegistry::EVERYTHING);
DCHECK(extension);
controller_->ActivateApp(profile_,
extension,
diff --git a/chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.cc b/chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.cc
index 769900b4..44646cb 100644
--- a/chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.cc
+++ b/chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.cc
@@ -8,7 +8,6 @@
#include "ash/shelf/shelf_model.h"
#include "ash/shell.h"
#include "ash/wm/window_util.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/ui/ash/launcher/chrome_launcher_app_menu_item.h"
#include "chrome/browser/ui/ash/launcher/chrome_launcher_app_menu_item_tab.h"
#include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h"
@@ -27,13 +26,14 @@
#include "chrome/common/extensions/manifest_handlers/app_launch_info.h"
#include "content/public/browser/navigation_entry.h"
#include "content/public/browser/web_contents.h"
-#include "extensions/browser/extension_system.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/browser/process_manager.h"
#include "ui/aura/window.h"
#include "ui/events/event.h"
#include "ui/wm/core/window_animations.h"
using extensions::Extension;
+using extensions::ExtensionRegistry;
namespace {
@@ -287,13 +287,10 @@ bool AppShortcutLauncherItemController::WebContentMatchesApp(
Browser* browser) {
// If the browser is an app window and the app name matches the extension.
if (browser->is_app()) {
- const extensions::Extension* browser_extension = NULL;
- const ExtensionService* extension_service =
- browser->profile()->GetExtensionService();
- if (extension_service) {
- browser_extension = extension_service->GetInstalledExtension(
- web_app::GetExtensionIdFromApplicationName(browser->app_name()));
- }
+ const extensions::Extension* browser_extension =
+ ExtensionRegistry::Get(browser->profile())->GetExtensionById(
+ web_app::GetExtensionIdFromApplicationName(browser->app_name()),
+ ExtensionRegistry::EVERYTHING);
return browser_extension == extension;
}
diff --git a/chrome/browser/ui/ash/launcher/chrome_launcher_controller.cc b/chrome/browser/ui/ash/launcher/chrome_launcher_controller.cc
index 227df8d..2443565 100644
--- a/chrome/browser/ui/ash/launcher/chrome_launcher_controller.cc
+++ b/chrome/browser/ui/ash/launcher/chrome_launcher_controller.cc
@@ -27,7 +27,6 @@
#include "chrome/browser/chrome_notification_types.h"
#include "chrome/browser/defaults.h"
#include "chrome/browser/extensions/app_icon_loader_impl.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/extension_util.h"
#include "chrome/browser/extensions/launch_util.h"
#include "chrome/browser/favicon/favicon_tab_helper.h"
@@ -70,6 +69,7 @@
#include "content/public/browser/notification_service.h"
#include "content/public/browser/web_contents.h"
#include "extensions/browser/extension_prefs.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/browser/extension_system.h"
#include "extensions/browser/extension_util.h"
#include "extensions/common/extension.h"
@@ -838,9 +838,10 @@ void ChromeLauncherController::SetLaunchType(
if (!HasItemController(id))
return;
- extensions::SetLaunchType(profile_->GetExtensionService(),
- id_to_item_controller_map_[id]->app_id(),
- launch_type);
+ extensions::SetLaunchType(
+ extensions::ExtensionSystem::Get(profile_)->extension_service(),
+ id_to_item_controller_map_[id]->app_id(),
+ launch_type);
}
void ChromeLauncherController::UnpinAppWithID(const std::string& app_id) {
@@ -1032,9 +1033,8 @@ void ChromeLauncherController::SetRefocusURLPatternForTest(ash::ShelfID id,
const Extension* ChromeLauncherController::GetExtensionForAppID(
const std::string& app_id) const {
- // Some unit tests do not have a real extension.
- return (profile_->GetExtensionService()) ?
- profile_->GetExtensionService()->GetInstalledExtension(app_id) : NULL;
+ return extensions::ExtensionRegistry::Get(profile_)->GetExtensionById(
+ app_id, extensions::ExtensionRegistry::EVERYTHING);
}
void ChromeLauncherController::ActivateWindowOrMinimizeIfActive(
@@ -1732,7 +1732,7 @@ void ChromeLauncherController::SetVirtualKeyboardBehaviorFromPrefs() {
#endif // defined(OS_CHROMEOS)
ash::ShelfItemStatus ChromeLauncherController::GetAppState(
- const::std::string& app_id) {
+ const std::string& app_id) {
ash::ShelfItemStatus status = ash::STATUS_CLOSED;
for (WebContentsToAppIDMap::iterator it = web_contents_to_app_id_.begin();
it != web_contents_to_app_id_.end();
diff --git a/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h b/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h
index 1e22495f1..38e0187 100644
--- a/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h
+++ b/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h
@@ -78,7 +78,6 @@ class ChromeLauncherControllerUserSwitchObserver {
virtual ~ChromeLauncherControllerUserSwitchObserver() {}
private:
-
DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerUserSwitchObserver);
};
@@ -474,7 +473,7 @@ class ChromeLauncherController : public ash::ShelfDelegate,
// Returns the shelf item status for the given |app_id|, which can be either
// STATUS_ACTIVE (if the app is active), STATUS_RUNNING (if there is such an
// app) or STATUS_CLOSED.
- ash::ShelfItemStatus GetAppState(const::std::string& app_id);
+ ash::ShelfItemStatus GetAppState(const std::string& app_id);
// Creates an app launcher to insert at |index|. Note that |index| may be
// adjusted by the model to meet ordering constraints.
diff --git a/chrome/browser/ui/ash/launcher/launcher_app_tab_helper.cc b/chrome/browser/ui/ash/launcher/launcher_app_tab_helper.cc
index c83bc99..509087d 100644
--- a/chrome/browser/ui/ash/launcher/launcher_app_tab_helper.cc
+++ b/chrome/browser/ui/ash/launcher/launcher_app_tab_helper.cc
@@ -69,10 +69,8 @@ const extensions::Extension* GetExtensionForTab(Profile* profile,
const extensions::Extension* GetExtensionByID(Profile* profile,
const std::string& id) {
- ExtensionService* extension_service = profile->GetExtensionService();
- if (!extension_service || !extension_service->extensions_enabled())
- return NULL;
- return extension_service->GetInstalledExtension(id);
+ return extensions::ExtensionRegistry::Get(profile)->GetExtensionById(
+ id, extensions::ExtensionRegistry::EVERYTHING);
}
} // namespace
diff --git a/chrome/browser/ui/ash/launcher/launcher_item_controller.cc b/chrome/browser/ui/ash/launcher/launcher_item_controller.cc
index 532552d..1f0a30f 100644
--- a/chrome/browser/ui/ash/launcher/launcher_item_controller.cc
+++ b/chrome/browser/ui/ash/launcher/launcher_item_controller.cc
@@ -6,9 +6,9 @@
#include "base/basictypes.h"
#include "base/strings/utf_string_conversions.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/common/extension.h"
LauncherItemController::LauncherItemController(
@@ -31,12 +31,17 @@ const std::string& LauncherItemController::app_id() const {
}
base::string16 LauncherItemController::GetAppTitle() const {
+ base::string16 title;
if (app_id_.empty())
- return base::string16();
+ return title;
+
const extensions::Extension* extension =
- launcher_controller_->profile()->GetExtensionService()->
- GetInstalledExtension(app_id_);
- return extension ? base::UTF8ToUTF16(extension->name()) : base::string16();
+ extensions::ExtensionRegistry::Get(
+ launcher_controller_->profile())->GetExtensionById(
+ app_id_, extensions::ExtensionRegistry::EVERYTHING);
+ if (extension)
+ title = base::UTF8ToUTF16(extension->name());
+ return title;
}
ash::ShelfItemType LauncherItemController::GetShelfItemType() const {
diff --git a/chrome/browser/ui/browser_command_controller.cc b/chrome/browser/ui/browser_command_controller.cc
index f32b8e0..9ad358f 100644
--- a/chrome/browser/ui/browser_command_controller.cc
+++ b/chrome/browser/ui/browser_command_controller.cc
@@ -39,6 +39,7 @@
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_contents_observer.h"
#include "content/public/common/url_constants.h"
+#include "extensions/browser/extension_system.h"
#include "ui/events/keycodes/keyboard_codes.h"
#if defined(OS_MACOSX)
@@ -1045,7 +1046,8 @@ void BrowserCommandController::UpdateSharedCommandsForIncognitoAvailability(
command_updater->UpdateCommandEnabled(
IDC_SHOW_BOOKMARK_MANAGER,
browser_defaults::bookmarks_enabled && !forced_incognito);
- ExtensionService* extension_service = profile->GetExtensionService();
+ ExtensionService* extension_service =
+ extensions::ExtensionSystem::Get(profile)->extension_service();
const bool enable_extensions =
extension_service && extension_service->extensions_enabled();
diff --git a/chrome/browser/ui/browser_commands.cc b/chrome/browser/ui/browser_commands.cc
index 8ae051d..f3d453f 100644
--- a/chrome/browser/ui/browser_commands.cc
+++ b/chrome/browser/ui/browser_commands.cc
@@ -79,6 +79,7 @@
#include "content/public/common/url_utils.h"
#include "content/public/common/user_agent.h"
#include "extensions/browser/extension_registry.h"
+#include "extensions/browser/extension_system.h"
#include "extensions/common/extension.h"
#include "extensions/common/extension_set.h"
#include "net/base/escape.h"
@@ -518,7 +519,8 @@ void OpenCurrentURL(Browser* browser) {
TabStripModel::ADD_FORCE_INDEX | TabStripModel::ADD_INHERIT_OPENER;
Navigate(&params);
- DCHECK(browser->profile()->GetExtensionService());
+ DCHECK(extensions::ExtensionSystem::Get(
+ browser->profile())->extension_service());
const extensions::Extension* extension =
extensions::ExtensionRegistry::Get(browser->profile())
->enabled_extensions().GetAppByURL(url);
diff --git a/chrome/browser/ui/fullscreen/fullscreen_exit_bubble.cc b/chrome/browser/ui/fullscreen/fullscreen_exit_bubble.cc
index 63003a0..966e66f 100644
--- a/chrome/browser/ui/fullscreen/fullscreen_exit_bubble.cc
+++ b/chrome/browser/ui/fullscreen/fullscreen_exit_bubble.cc
@@ -10,6 +10,7 @@
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_commands.h"
#include "chrome/browser/ui/fullscreen/fullscreen_controller.h"
+#include "extensions/browser/extension_system.h"
#include "grit/generated_resources.h"
#include "grit/ui_strings.h"
#include "ui/base/l10n/l10n_util.h"
@@ -130,7 +131,9 @@ void FullscreenExitBubble::Cancel() {
base::string16 FullscreenExitBubble::GetCurrentMessageText() const {
return fullscreen_bubble::GetLabelTextForType(
- bubble_type_, url_, browser_->profile()->GetExtensionService());
+ bubble_type_, url_,
+ extensions::ExtensionSystem::Get(
+ browser_->profile())->extension_service());
}
base::string16 FullscreenExitBubble::GetCurrentDenyButtonText() const {
diff --git a/chrome/browser/ui/startup/startup_browser_creator_impl.cc b/chrome/browser/ui/startup/startup_browser_creator_impl.cc
index 98105ff..6039cae 100644
--- a/chrome/browser/ui/startup/startup_browser_creator_impl.cc
+++ b/chrome/browser/ui/startup/startup_browser_creator_impl.cc
@@ -32,7 +32,6 @@
#include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h"
#include "chrome/browser/defaults.h"
#include "chrome/browser/extensions/extension_creator.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/launch_util.h"
#include "chrome/browser/extensions/pack_extension_job.h"
#include "chrome/browser/first_run/first_run.h"
@@ -89,7 +88,6 @@
#include "content/public/browser/web_contents.h"
#include "extensions/browser/extension_prefs.h"
#include "extensions/browser/extension_registry.h"
-#include "extensions/browser/extension_system.h"
#include "extensions/common/constants.h"
#include "extensions/common/extension.h"
#include "extensions/common/extension_set.h"
@@ -188,9 +186,8 @@ bool GetAppLaunchContainer(
const Extension** out_extension,
extensions::LaunchContainer* out_launch_container) {
- ExtensionService* extensions_service = profile->GetExtensionService();
- const Extension* extension =
- extensions_service->GetExtensionById(app_id, false);
+ const Extension* extension = extensions::ExtensionRegistry::Get(
+ profile)->enabled_extensions().GetByID(app_id);
// The extension with id |app_id| may have been uninstalled.
if (!extension)
return false;
@@ -224,7 +221,7 @@ void RecordCmdLineAppHistogram(extensions::Manifest::Type app_type) {
void RecordAppLaunches(Profile* profile,
const std::vector<GURL>& cmd_line_urls,
- StartupTabs& autolaunch_tabs) {
+ const StartupTabs& autolaunch_tabs) {
const extensions::ExtensionSet& extensions =
extensions::ExtensionRegistry::Get(profile)->enabled_extensions();
for (size_t i = 0; i < cmd_line_urls.size(); ++i) {
diff --git a/chrome/browser/ui/views/extensions/bookmark_app_bubble_view.cc b/chrome/browser/ui/views/extensions/bookmark_app_bubble_view.cc
index 6c10e7f..e1a66c8 100644
--- a/chrome/browser/ui/views/extensions/bookmark_app_bubble_view.cc
+++ b/chrome/browser/ui/views/extensions/bookmark_app_bubble_view.cc
@@ -13,6 +13,8 @@
#include "chrome/browser/profiles/profile.h"
#include "chrome/common/extensions/extension_constants.h"
#include "extensions/browser/extension_prefs.h"
+#include "extensions/browser/extension_registry.h"
+#include "extensions/browser/extension_system.h"
#include "extensions/browser/pref_names.h"
#include "extensions/common/constants.h"
#include "grit/generated_resources.h"
@@ -41,6 +43,10 @@ const int kMinTextfieldWidth = 200;
// Size of the icon.
const int kIconSize = extension_misc::EXTENSION_ICON_MEDIUM;
+ExtensionService* GetExtensionService(Profile* profile) {
+ return extensions::ExtensionSystem::Get(profile)->extension_service();
+}
+
} // namespace
BookmarkAppBubbleView* BookmarkAppBubbleView::bookmark_app_bubble_ = NULL;
@@ -158,7 +164,8 @@ void BookmarkAppBubbleView::Init() {
layout->AddPaddingRow(0, views::kRelatedControlVerticalSpacing);
const extensions::Extension* extension =
- profile_->GetExtensionService()->GetInstalledExtension(extension_id_);
+ extensions::ExtensionRegistry::Get(profile_)->GetExtensionById(
+ extension_id_, extensions::ExtensionRegistry::EVERYTHING);
layout->StartRow(0, TITLE_TEXT_COLUMN_SET_ID);
icon_image_view_ = new views::ImageView();
@@ -199,7 +206,7 @@ void BookmarkAppBubbleView::WindowClosing() {
bookmark_app_bubble_ = NULL;
if (remove_app_) {
- profile_->GetExtensionService()->UninstallExtension(
+ GetExtensionService(profile_)->UninstallExtension(
extension_id_, false, NULL);
} else {
ApplyEdits();
@@ -248,12 +255,13 @@ void BookmarkAppBubbleView::ApplyEdits() {
: extensions::LAUNCH_TYPE_WINDOW;
profile_->GetPrefs()->SetInteger(
extensions::pref_names::kBookmarkAppCreationLaunchType, launch_type);
- extensions::SetLaunchType(profile_->GetExtensionService(),
+ extensions::SetLaunchType(GetExtensionService(profile_),
extension_id_,
launch_type);
const extensions::Extension* extension =
- profile_->GetExtensionService()->GetInstalledExtension(extension_id_);
+ extensions::ExtensionRegistry::Get(profile_)->GetExtensionById(
+ extension_id_, extensions::ExtensionRegistry::EVERYTHING);
if (extension && base::UTF8ToUTF16(extension->name()) == title_tf_->text())
return;
@@ -261,6 +269,6 @@ void BookmarkAppBubbleView::ApplyEdits() {
WebApplicationInfo install_info(web_app_info_);
install_info.title = title_tf_->text();
- extensions::CreateOrUpdateBookmarkApp(profile_->GetExtensionService(),
+ extensions::CreateOrUpdateBookmarkApp(GetExtensionService(profile_),
install_info);
}
diff --git a/chrome/browser/ui/views/location_bar/page_action_image_view.cc b/chrome/browser/ui/views/location_bar/page_action_image_view.cc
index 6302fb4..a59ddc2 100644
--- a/chrome/browser/ui/views/location_bar/page_action_image_view.cc
+++ b/chrome/browser/ui/views/location_bar/page_action_image_view.cc
@@ -10,7 +10,6 @@
#include "chrome/browser/extensions/extension_action_icon_factory.h"
#include "chrome/browser/extensions/extension_action_manager.h"
#include "chrome/browser/extensions/extension_context_menu_model.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/extension_tab_util.h"
#include "chrome/browser/extensions/location_bar_controller.h"
#include "chrome/browser/extensions/tab_helper.h"
@@ -21,6 +20,7 @@
#include "chrome/browser/ui/views/frame/browser_view.h"
#include "chrome/browser/ui/views/location_bar/location_bar_view.h"
#include "chrome/browser/ui/webui/extensions/extension_info_ui.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/common/extension.h"
#include "ui/accessibility/ax_view_state.h"
#include "ui/events/event.h"
@@ -41,8 +41,9 @@ PageActionImageView::PageActionImageView(LocationBarView* owner,
current_tab_id_(-1),
preview_enabled_(false),
popup_(NULL) {
- const Extension* extension = owner_->profile()->GetExtensionService()->
- GetExtensionById(page_action->extension_id(), false);
+ const Extension* extension = extensions::ExtensionRegistry::Get(
+ owner_->profile())->enabled_extensions().GetByID(
+ page_action->extension_id());
DCHECK(extension);
icon_factory_.reset(
@@ -149,8 +150,9 @@ void PageActionImageView::ShowContextMenuForView(
View* source,
const gfx::Point& point,
ui::MenuSourceType source_type) {
- const Extension* extension = owner_->profile()->GetExtensionService()->
- GetExtensionById(page_action()->extension_id(), false);
+ const Extension* extension = extensions::ExtensionRegistry::Get(
+ owner_->profile())->enabled_extensions().GetByID(
+ page_action()->extension_id());
if (!extension->ShowConfigureContextMenus())
return;
diff --git a/chrome/browser/ui/webui/app_launcher_page_ui.cc b/chrome/browser/ui/webui/app_launcher_page_ui.cc
index d4e43b8..4cef69b 100644
--- a/chrome/browser/ui/webui/app_launcher_page_ui.cc
+++ b/chrome/browser/ui/webui/app_launcher_page_ui.cc
@@ -18,6 +18,7 @@
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/render_process_host.h"
#include "content/public/browser/web_ui.h"
+#include "extensions/browser/extension_system.h"
#include "grit/generated_resources.h"
#include "grit/theme_resources.h"
#include "ui/base/l10n/l10n_util.h"
@@ -42,7 +43,8 @@ AppLauncherPageUI::AppLauncherPageUI(content::WebUI* web_ui)
web_ui->AddMessageHandler(new NTPLoginHandler());
if (!GetProfile()->IsOffTheRecord()) {
- ExtensionService* service = GetProfile()->GetExtensionService();
+ ExtensionService* service =
+ extensions::ExtensionSystem::Get(GetProfile())->extension_service();
// We should not be launched without an ExtensionService.
DCHECK(service);
web_ui->AddMessageHandler(new AppLauncherHandler(service));
diff --git a/chrome/browser/ui/webui/extensions/extension_settings_browsertest.cc b/chrome/browser/ui/webui/extensions/extension_settings_browsertest.cc
index 827332a..fbb9af1 100644
--- a/chrome/browser/ui/webui/extensions/extension_settings_browsertest.cc
+++ b/chrome/browser/ui/webui/extensions/extension_settings_browsertest.cc
@@ -74,7 +74,8 @@ class MockAutoConfirmExtensionInstallPrompt : public ExtensionInstallPrompt {
const Extension* ExtensionSettingsUIBrowserTest::InstallExtension(
const base::FilePath& path) {
Profile* profile = this->GetProfile();
- ExtensionService* service = profile->GetExtensionService();
+ ExtensionService* service =
+ extensions::ExtensionSystem::Get(profile)->extension_service();
service->set_show_extensions_prompts(false);
size_t num_before = service->extensions()->size();
{
diff --git a/chrome/browser/ui/webui/extensions/extension_settings_handler.cc b/chrome/browser/ui/webui/extensions/extension_settings_handler.cc
index 9663e0a..c1a346b 100644
--- a/chrome/browser/ui/webui/extensions/extension_settings_handler.cc
+++ b/chrome/browser/ui/webui/extensions/extension_settings_handler.cc
@@ -568,8 +568,9 @@ void ExtensionSettingsHandler::RegisterMessages() {
// Don't override an |extension_service_| or |management_policy_| injected
// for testing.
if (!extension_service_) {
- extension_service_ = Profile::FromWebUI(web_ui())->GetOriginalProfile()->
- GetExtensionService();
+ Profile* profile = Profile::FromWebUI(web_ui())->GetOriginalProfile();
+ extension_service_ =
+ extensions::ExtensionSystem::Get(profile)->extension_service();
}
if (!management_policy_) {
management_policy_ = ExtensionSystem::Get(
diff --git a/chrome/browser/ui/webui/ntp/favicon_webui_handler.cc b/chrome/browser/ui/webui/ntp/favicon_webui_handler.cc
index 0b3b5b2..ad85fed 100644
--- a/chrome/browser/ui/webui/ntp/favicon_webui_handler.cc
+++ b/chrome/browser/ui/webui/ntp/favicon_webui_handler.cc
@@ -11,13 +11,13 @@
#include "base/strings/stringprintf.h"
#include "base/values.h"
#include "chrome/browser/extensions/extension_icon_manager.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/favicon/favicon_service.h"
#include "chrome/browser/favicon/favicon_service_factory.h"
#include "chrome/browser/history/top_sites.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/common/url_constants.h"
#include "content/public/browser/web_ui.h"
+#include "extensions/browser/extension_registry.h"
#include "grit/ui_resources.h"
#include "third_party/skia/include/core/SkBitmap.h"
#include "ui/base/l10n/l10n_util.h"
@@ -142,13 +142,14 @@ void FaviconWebUIHandler::HandleGetAppIconDominantColor(
std::string extension_id;
CHECK(args->GetString(0, &extension_id));
- ExtensionService* extension_service =
- Profile::FromWebUI(web_ui())->GetExtensionService();
- const extensions::Extension* extension = extension_service->GetExtensionById(
- extension_id, false);
+ Profile* profile = Profile::FromWebUI(web_ui());
+ extensions::ExtensionRegistry* extension_registry =
+ extensions::ExtensionRegistry::Get(profile);
+ const extensions::Extension* extension =
+ extension_registry->enabled_extensions().GetByID(extension_id);
if (!extension)
return;
- app_icon_color_manager_->LoadIcon(extension_service->profile(), extension);
+ app_icon_color_manager_->LoadIcon(profile, extension);
}
void FaviconWebUIHandler::NotifyAppIconReady(const std::string& extension_id) {
diff --git a/chrome/browser/ui/webui/ntp/new_tab_ui.cc b/chrome/browser/ui/webui/ntp/new_tab_ui.cc
index 2794f4d..7cad4d5bc 100644
--- a/chrome/browser/ui/webui/ntp/new_tab_ui.cc
+++ b/chrome/browser/ui/webui/ntp/new_tab_ui.cc
@@ -38,6 +38,7 @@
#include "content/public/browser/url_data_source.h"
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_ui.h"
+#include "extensions/browser/extension_system.h"
#include "grit/browser_resources.h"
#include "grit/generated_resources.h"
#include "ui/base/l10n/l10n_util.h"
@@ -91,7 +92,8 @@ NewTabUI::NewTabUI(content::WebUI* web_ui)
// thumbnails, but also clicks on recently bookmarked.
web_ui->SetLinkTransitionType(content::PAGE_TRANSITION_AUTO_BOOKMARK);
- if (!GetProfile()->IsOffTheRecord()) {
+ Profile* profile = GetProfile();
+ if (!profile->IsOffTheRecord()) {
web_ui->AddMessageHandler(new browser_sync::ForeignSessionHandler());
web_ui->AddMessageHandler(new MetricsHandler());
web_ui->AddMessageHandler(new MostVisitedHandler());
@@ -103,14 +105,15 @@ NewTabUI::NewTabUI(content::WebUI* web_ui)
web_ui->AddMessageHandler(new SuggestionsHandler());
web_ui->AddMessageHandler(new NewTabPageSyncHandler());
- ExtensionService* service = GetProfile()->GetExtensionService();
+ ExtensionService* service =
+ extensions::ExtensionSystem::Get(profile)->extension_service();
// We might not have an ExtensionService (on ChromeOS when not logged in
// for example).
if (service)
web_ui->AddMessageHandler(new AppLauncherHandler(service));
}
- if (NTPLoginHandler::ShouldShow(GetProfile()))
+ if (NTPLoginHandler::ShouldShow(profile))
web_ui->AddMessageHandler(new NTPLoginHandler());
#if defined(ENABLE_THEMES)
@@ -120,8 +123,8 @@ NewTabUI::NewTabUI(content::WebUI* web_ui)
web_ui->AddMessageHandler(new ThemeHandler());
#endif
- scoped_ptr<NewTabHTMLSource> html_source(new NewTabHTMLSource(
- GetProfile()->GetOriginalProfile()));
+ scoped_ptr<NewTabHTMLSource> html_source(
+ new NewTabHTMLSource(profile->GetOriginalProfile()));
// These two resources should be loaded only if suggestions NTP is enabled.
html_source->AddResource("suggestions_page.css", "text/css",
@@ -131,9 +134,9 @@ NewTabUI::NewTabUI(content::WebUI* web_ui)
IDR_SUGGESTIONS_PAGE_JS);
}
// content::URLDataSource assumes the ownership of the html_source.
- content::URLDataSource::Add(GetProfile(), html_source.release());
+ content::URLDataSource::Add(profile, html_source.release());
- pref_change_registrar_.Init(GetProfile()->GetPrefs());
+ pref_change_registrar_.Init(profile->GetPrefs());
pref_change_registrar_.Add(prefs::kShowBookmarkBar,
base::Bind(&NewTabUI::OnShowBookmarkBarChanged,
base::Unretained(this)));
diff --git a/chrome/browser/ui/webui/options/content_settings_handler.cc b/chrome/browser/ui/webui/options/content_settings_handler.cc
index 10cc68c..0d17db7 100644
--- a/chrome/browser/ui/webui/options/content_settings_handler.cc
+++ b/chrome/browser/ui/webui/options/content_settings_handler.cc
@@ -22,7 +22,6 @@
#include "chrome/browser/content_settings/host_content_settings_map.h"
#include "chrome/browser/custom_handlers/protocol_handler_registry.h"
#include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/extension_special_storage_policy.h"
#include "chrome/browser/notifications/desktop_notification_service.h"
#include "chrome/browser/notifications/desktop_notification_service_factory.h"
@@ -42,6 +41,7 @@
#include "content/public/browser/web_ui.h"
#include "content/public/common/content_switches.h"
#include "content/public/common/page_zoom.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/common/extension_set.h"
#include "extensions/common/permissions/api_permission.h"
#include "extensions/common/permissions/permissions_data.h"
@@ -233,13 +233,10 @@ void AddExceptionForHostedApp(const std::string& url_pattern,
// adds their web extent and launch URL to the |exceptions| list.
void AddExceptionsGrantedByHostedApps(
Profile* profile, AppFilter app_filter, base::ListValue* exceptions) {
- const ExtensionService* extension_service = profile->GetExtensionService();
- // After ExtensionSystem::Init has been called at the browser's start,
- // GetExtensionService() should not return NULL, so this is safe:
- const extensions::ExtensionSet* extensions = extension_service->extensions();
-
- for (extensions::ExtensionSet::const_iterator extension = extensions->begin();
- extension != extensions->end(); ++extension) {
+ const extensions::ExtensionSet& extensions =
+ extensions::ExtensionRegistry::Get(profile)->enabled_extensions();
+ for (extensions::ExtensionSet::const_iterator extension = extensions.begin();
+ extension != extensions.end(); ++extension) {
if (!app_filter(*extension->get(), profile))
continue;
diff --git a/chrome/browser/ui/webui/uber/uber_ui.cc b/chrome/browser/ui/webui/uber/uber_ui.cc
index ee600c8..edd2487 100644
--- a/chrome/browser/ui/webui/uber/uber_ui.cc
+++ b/chrome/browser/ui/webui/uber/uber_ui.cc
@@ -4,9 +4,7 @@
#include "chrome/browser/ui/webui/uber/uber_ui.h"
-#include "base/command_line.h"
#include "base/stl_util.h"
-#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/chrome_notification_types.h"
#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/profile.h"
@@ -22,12 +20,12 @@
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_ui.h"
#include "content/public/browser/web_ui_data_source.h"
+#include "extensions/browser/extension_registry.h"
#include "extensions/common/extension_set.h"
#include "grit/browser_resources.h"
#include "grit/chromium_strings.h"
#include "grit/generated_resources.h"
-using base::ASCIIToUTF16;
using content::NavigationController;
using content::NavigationEntry;
using content::RenderViewHost;
@@ -49,39 +47,27 @@ content::WebUIDataSource* CreateUberHTMLSource() {
// Hack alert: continue showing "Loading..." until a real title is set.
source->AddLocalizedString("pageTitle", IDS_TAB_LOADING_TITLE);
- source->AddString("extensionsFrameURL",
- ASCIIToUTF16(chrome::kChromeUIExtensionsFrameURL));
- source->AddString("extensionsHost",
- ASCIIToUTF16(chrome::kChromeUIExtensionsHost));
- source->AddString("helpFrameURL",
- ASCIIToUTF16(chrome::kChromeUIHelpFrameURL));
- source->AddString("helpHost",
- ASCIIToUTF16(chrome::kChromeUIHelpHost));
- source->AddString("historyFrameURL",
- ASCIIToUTF16(chrome::kChromeUIHistoryFrameURL));
- source->AddString("historyHost",
- ASCIIToUTF16(chrome::kChromeUIHistoryHost));
- source->AddString("settingsFrameURL",
- ASCIIToUTF16(chrome::kChromeUISettingsFrameURL));
- source->AddString("settingsHost",
- ASCIIToUTF16(chrome::kChromeUISettingsHost));
+ source->AddString("extensionsFrameURL", chrome::kChromeUIExtensionsFrameURL);
+ source->AddString("extensionsHost", chrome::kChromeUIExtensionsHost);
+ source->AddString("helpFrameURL", chrome::kChromeUIHelpFrameURL);
+ source->AddString("helpHost", chrome::kChromeUIHelpHost);
+ source->AddString("historyFrameURL", chrome::kChromeUIHistoryFrameURL);
+ source->AddString("historyHost", chrome::kChromeUIHistoryHost);
+ source->AddString("settingsFrameURL", chrome::kChromeUISettingsFrameURL);
+ source->AddString("settingsHost", chrome::kChromeUISettingsHost);
return source;
}
// Determines whether the user has an active extension of the given type.
-bool HasExtensionType(Profile* profile, const char* extensionType) {
- const extensions::ExtensionSet* extensionSet =
- profile->GetExtensionService()->extensions();
-
- for (extensions::ExtensionSet::const_iterator iter = extensionSet->begin();
- iter != extensionSet->end(); ++iter) {
- extensions::URLOverrides::URLOverrideMap map =
+bool HasExtensionType(Profile* profile, const std::string& extension_type) {
+ const extensions::ExtensionSet& extension_set =
+ extensions::ExtensionRegistry::Get(profile)->enabled_extensions();
+ for (extensions::ExtensionSet::const_iterator iter = extension_set.begin();
+ iter != extension_set.end(); ++iter) {
+ const extensions::URLOverrides::URLOverrideMap& map =
extensions::URLOverrides::GetChromeURLOverrides(iter->get());
- extensions::URLOverrides::URLOverrideMap::const_iterator result =
- map.find(std::string(extensionType));
-
- if (result != map.end())
+ if (ContainsKey(map, extension_type))
return true;
}
@@ -105,30 +91,25 @@ content::WebUIDataSource* CreateUberFrameHTMLSource(Profile* profile) {
#endif // defined(OS_CHROMEOS)
// Group settings and help separately if settings in a window is enabled.
- base::string16 settings_group(ASCIIToUTF16("settings_group"));
- base::string16 other_group(ASCIIToUTF16(
- ::switches::SettingsWindowEnabled() ? "other_group" : "settings_group"));
- source->AddString("extensionsHost",
- ASCIIToUTF16(chrome::kChromeUIExtensionsHost));
+ std::string settings_group("settings_group");
+ std::string other_group(
+ ::switches::SettingsWindowEnabled() ? "other_group" : "settings_group");
+ source->AddString("extensionsHost", chrome::kChromeUIExtensionsHost);
source->AddLocalizedString("extensionsDisplayName",
IDS_MANAGE_EXTENSIONS_SETTING_WINDOWS_TITLE);
source->AddString("extensionsGroup", other_group);
- source->AddString("helpHost",
- ASCIIToUTF16(chrome::kChromeUIHelpHost));
+ source->AddString("helpHost", chrome::kChromeUIHelpHost);
source->AddLocalizedString("helpDisplayName", IDS_ABOUT_TITLE);
source->AddString("helpGroup", settings_group);
- source->AddString("historyHost",
- ASCIIToUTF16(chrome::kChromeUIHistoryHost));
+ source->AddString("historyHost", chrome::kChromeUIHistoryHost);
source->AddLocalizedString("historyDisplayName", IDS_HISTORY_TITLE);
source->AddString("historyGroup", other_group);
- source->AddString("settingsHost",
- ASCIIToUTF16(chrome::kChromeUISettingsHost));
+ source->AddString("settingsHost", chrome::kChromeUISettingsHost);
source->AddLocalizedString("settingsDisplayName", IDS_SETTINGS_TITLE);
source->AddString("settingsGroup", settings_group);
- bool overridesHistory = HasExtensionType(profile,
- chrome::kChromeUIHistoryHost);
- source->AddString("overridesHistory",
- ASCIIToUTF16(overridesHistory ? "yes" : "no"));
+ bool overridesHistory =
+ HasExtensionType(profile, chrome::kChromeUIHistoryHost);
+ source->AddString("overridesHistory", overridesHistory ? "yes" : "no");
source->DisableDenyXFrameOptions();
source->OverrideContentSecurityPolicyFrameSrc("frame-src chrome:;");
@@ -167,7 +148,7 @@ void UberUI::RegisterSubpage(const std::string& page_url,
}
content::WebUI* UberUI::GetSubpage(const std::string& page_url) {
- if (!sub_uis_.count(page_url))
+ if (!ContainsKey(sub_uis_, page_url))
return NULL;
return sub_uis_[page_url];
}
@@ -212,9 +193,8 @@ UberFrameUI::UberFrameUI(content::WebUI* web_ui) : WebUIController(web_ui) {
content::WebUIDataSource::Add(profile, CreateUberFrameHTMLSource(profile));
// Register as an observer for when extensions are loaded and unloaded.
- registrar_.Add(this,
- chrome::NOTIFICATION_EXTENSION_LOADED_DEPRECATED,
- content::Source<Profile>(profile));
+ registrar_.Add(this, chrome::NOTIFICATION_EXTENSION_LOADED_DEPRECATED,
+ content::Source<Profile>(profile));
registrar_.Add(this, chrome::NOTIFICATION_EXTENSION_UNLOADED_DEPRECATED,
content::Source<Profile>(profile));
}
@@ -222,7 +202,8 @@ UberFrameUI::UberFrameUI(content::WebUI* web_ui) : WebUIController(web_ui) {
UberFrameUI::~UberFrameUI() {
}
-void UberFrameUI::Observe(int type, const content::NotificationSource& source,
+void UberFrameUI::Observe(int type,
+ const content::NotificationSource& source,
const content::NotificationDetails& details) {
switch (type) {
// We listen for notifications that indicate an extension has been loaded