Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1890)

Unified Diff: apps/shell_window_registry.cc

Issue 23524005: Introduce AppsClient and use it in apps to get the loaded profiles list. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « apps/shell_window_registry.h ('k') | chrome/browser/apps/chrome_apps_client.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: apps/shell_window_registry.cc
diff --git a/apps/shell_window_registry.cc b/apps/shell_window_registry.cc
index 301bcf1f3183082f1bacc4294aaf216c4820e479..677a8c63b2a3ede069236e2054c60d2d3fe17af9 100644
--- a/apps/shell_window_registry.cc
+++ b/apps/shell_window_registry.cc
@@ -2,14 +2,14 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include "apps/apps_client.h"
#include "apps/native_app_window.h"
#include "apps/shell_window.h"
#include "apps/shell_window_registry.h"
-#include "chrome/browser/browser_process.h"
#include "chrome/browser/profiles/incognito_helpers.h"
-#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/common/extensions/extension.h"
#include "components/browser_context_keyed_service/browser_context_dependency_manager.h"
+#include "content/public/browser/browser_context.h"
#include "content/public/browser/devtools_agent_host.h"
#include "content/public/browser/devtools_manager.h"
#include "content/public/browser/render_process_host.h"
@@ -45,8 +45,8 @@ std::string GetWindowKeyForRenderViewHost(
namespace apps {
-ShellWindowRegistry::ShellWindowRegistry(Profile* profile)
- : profile_(profile),
+ShellWindowRegistry::ShellWindowRegistry(content::BrowserContext* context)
+ : context_(context),
devtools_callback_(base::Bind(
&ShellWindowRegistry::OnDevToolsStateChanged,
base::Unretained(this))) {
@@ -60,8 +60,9 @@ ShellWindowRegistry::~ShellWindowRegistry() {
}
// static
-ShellWindowRegistry* ShellWindowRegistry::Get(Profile* profile) {
- return Factory::GetForProfile(profile, true /* create */);
+ShellWindowRegistry* ShellWindowRegistry::Get(
+ content::BrowserContext* context) {
+ return Factory::GetForBrowserContext(context, true /* create */);
}
void ShellWindowRegistry::AddShellWindow(ShellWindow* shell_window) {
@@ -178,12 +179,13 @@ bool ShellWindowRegistry::HadDevToolsAttached(
// static
ShellWindow* ShellWindowRegistry::GetShellWindowForNativeWindowAnyProfile(
gfx::NativeWindow window) {
- std::vector<Profile*> profiles =
- g_browser_process->profile_manager()->GetLoadedProfiles();
- for (std::vector<Profile*>::const_iterator i = profiles.begin();
- i != profiles.end(); ++i) {
- ShellWindowRegistry* registry = Factory::GetForProfile(*i,
- false /* create */);
+ std::vector<content::BrowserContext*> contexts =
+ AppsClient::Get()->GetLoadedBrowserContexts();
+ for (std::vector<content::BrowserContext*>::const_iterator i =
+ contexts.begin();
+ i != contexts.end(); ++i) {
+ ShellWindowRegistry* registry = Factory::GetForBrowserContext(
+ *i, false /* create */);
if (!registry)
continue;
@@ -198,12 +200,13 @@ ShellWindow* ShellWindowRegistry::GetShellWindowForNativeWindowAnyProfile(
// static
bool ShellWindowRegistry::IsShellWindowRegisteredInAnyProfile(
int window_type_mask) {
- std::vector<Profile*> profiles =
- g_browser_process->profile_manager()->GetLoadedProfiles();
- for (std::vector<Profile*>::const_iterator i = profiles.begin();
- i != profiles.end(); ++i) {
- ShellWindowRegistry* registry = Factory::GetForProfile(*i,
- false /* create */);
+ std::vector<content::BrowserContext*> contexts =
+ AppsClient::Get()->GetLoadedBrowserContexts();
+ for (std::vector<content::BrowserContext*>::const_iterator i =
+ contexts.begin();
+ i != contexts.end(); ++i) {
+ ShellWindowRegistry* registry = Factory::GetForBrowserContext(
+ *i, false /* create */);
if (!registry)
continue;
@@ -229,8 +232,9 @@ void ShellWindowRegistry::OnDevToolsStateChanged(
content::RenderViewHost* rvh = agent_host->GetRenderViewHost();
// Ignore unrelated notifications.
if (!rvh ||
- rvh->GetSiteInstance()->GetProcess()->GetBrowserContext() != profile_)
+ rvh->GetSiteInstance()->GetProcess()->GetBrowserContext() != context_)
return;
+
std::string key = GetWindowKeyForRenderViewHost(this, rvh);
if (key.empty())
return;
@@ -263,10 +267,10 @@ void ShellWindowRegistry::BringToFront(ShellWindow* shell_window) {
// Factory boilerplate
// static
-ShellWindowRegistry* ShellWindowRegistry::Factory::GetForProfile(
- Profile* profile, bool create) {
+ShellWindowRegistry* ShellWindowRegistry::Factory::GetForBrowserContext(
+ content::BrowserContext* context, bool create) {
return static_cast<ShellWindowRegistry*>(
- GetInstance()->GetServiceForBrowserContext(profile, create));
+ GetInstance()->GetServiceForBrowserContext(context, create));
}
ShellWindowRegistry::Factory* ShellWindowRegistry::Factory::GetInstance() {
@@ -284,8 +288,8 @@ ShellWindowRegistry::Factory::~Factory() {
BrowserContextKeyedService*
ShellWindowRegistry::Factory::BuildServiceInstanceFor(
- content::BrowserContext* profile) const {
- return new ShellWindowRegistry(static_cast<Profile*>(profile));
+ content::BrowserContext* context) const {
+ return new ShellWindowRegistry(context);
}
bool ShellWindowRegistry::Factory::ServiceIsCreatedWithBrowserContext() const {
« no previous file with comments | « apps/shell_window_registry.h ('k') | chrome/browser/apps/chrome_apps_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698