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

Unified Diff: chrome/browser/devtools/devtools_window.cc

Issue 299693002: Add option to open the DevTools window for ServiceWorker on start in serviceworker-internals. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 7 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
Index: chrome/browser/devtools/devtools_window.cc
diff --git a/chrome/browser/devtools/devtools_window.cc b/chrome/browser/devtools/devtools_window.cc
index a57699c5970342a063109b58e69e700965453b58..98458afc0fb9c8b7a15f5236428f2c32d495587e 100644
--- a/chrome/browser/devtools/devtools_window.cc
+++ b/chrome/browser/devtools/devtools_window.cc
@@ -303,7 +303,8 @@ DevToolsWindow* DevToolsWindow::OpenDevToolsWindowForWorker(
DevToolsAgentHost* worker_agent) {
DevToolsWindow* window = FindDevToolsWindow(worker_agent);
if (!window) {
- window = DevToolsWindow::CreateDevToolsWindowForWorker(profile);
+ window = DevToolsWindow::CreateDevToolsWindowForWorker(
+ profile, worker_agent->IsWorkerPaused());
// Will disconnect the current client host if there is one.
content::DevToolsManager::GetInstance()->RegisterDevToolsClientHostFor(
worker_agent, window->bindings_->frontend_host());
@@ -314,9 +315,10 @@ DevToolsWindow* DevToolsWindow::OpenDevToolsWindowForWorker(
// static
DevToolsWindow* DevToolsWindow::CreateDevToolsWindowForWorker(
- Profile* profile) {
+ Profile* profile,
+ bool worker_paused) {
content::RecordAction(base::UserMetricsAction("DevTools_InspectWorker"));
- return Create(profile, GURL(), NULL, true, false, false);
+ return Create(profile, GURL(), NULL, true, worker_paused, false, false);
}
// static
@@ -374,8 +376,13 @@ void DevToolsWindow::OpenExternalFrontend(
content::DevToolsAgentHost* agent_host) {
DevToolsWindow* window = FindDevToolsWindow(agent_host);
if (!window) {
- window = Create(profile, DevToolsUI::GetProxyURL(frontend_url), NULL,
- false, true, false);
+ window = Create(profile,
+ DevToolsUI::GetProxyURL(frontend_url),
+ NULL,
+ false,
+ false,
+ true,
+ false);
content::DevToolsManager::GetInstance()->RegisterDevToolsClientHostFor(
agent_host, window->bindings_->frontend_host());
}
@@ -397,7 +404,7 @@ DevToolsWindow* DevToolsWindow::ToggleDevToolsWindow(
inspected_rvh->GetProcess()->GetBrowserContext());
content::RecordAction(
base::UserMetricsAction("DevTools_InspectRenderer"));
- window = Create(profile, GURL(), inspected_rvh, false, false, true);
+ window = Create(profile, GURL(), inspected_rvh, false, false, false, true);
manager->RegisterDevToolsClientHostFor(agent.get(),
window->bindings_->frontend_host());
do_open = true;
@@ -622,13 +629,13 @@ DevToolsWindow::DevToolsWindow(Profile* profile,
}
// static
-DevToolsWindow* DevToolsWindow::Create(
- Profile* profile,
- const GURL& frontend_url,
- content::RenderViewHost* inspected_rvh,
- bool shared_worker_frontend,
- bool external_frontend,
- bool can_dock) {
+DevToolsWindow* DevToolsWindow::Create(Profile* profile,
+ const GURL& frontend_url,
+ content::RenderViewHost* inspected_rvh,
+ bool shared_worker_frontend,
+ bool worker_paused,
pfeldman 2014/05/20 19:20:41 we should not pass state or capabilities-related p
+ bool external_frontend,
+ bool can_dock) {
if (inspected_rvh) {
// Check for a place to dock.
Browser* browser = NULL;
@@ -644,8 +651,10 @@ DevToolsWindow* DevToolsWindow::Create(
}
// Create WebContents with devtools.
- GURL url(GetDevToolsURL(profile, frontend_url,
+ GURL url(GetDevToolsURL(profile,
+ frontend_url,
shared_worker_frontend,
+ worker_paused,
external_frontend,
can_dock));
return new DevToolsWindow(profile, url, inspected_rvh, can_dock);
@@ -655,6 +664,7 @@ DevToolsWindow* DevToolsWindow::Create(
GURL DevToolsWindow::GetDevToolsURL(Profile* profile,
const GURL& base_url,
bool shared_worker_frontend,
+ bool worker_paused,
bool external_frontend,
bool can_dock) {
// Compatibility errors are encoded with data urls, pass them
@@ -669,6 +679,8 @@ GURL DevToolsWindow::GetDevToolsURL(Profile* profile,
((frontend_url.find("?") == std::string::npos) ? "?" : "&"));
if (shared_worker_frontend)
url_string += "&isSharedWorker=true";
+ if (worker_paused)
+ url_string += "&workerPaused=true";
if (external_frontend)
url_string += "&remoteFrontend=true";
if (can_dock)

Powered by Google App Engine
This is Rietveld 408576698