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

Unified Diff: content/browser/service_worker/embedded_worker_instance.cc

Issue 1893313007: DevTools: Attach all Service Workers except for old redundant ones. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: incorporated pfeldman's comment Created 4 years, 8 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: content/browser/service_worker/embedded_worker_instance.cc
diff --git a/content/browser/service_worker/embedded_worker_instance.cc b/content/browser/service_worker/embedded_worker_instance.cc
index 451a612d3ce6c8c4c0db474cdd3931c3fa0e2a2f..bbc663e5152407e128d7699f58d341a5a82601a3 100644
--- a/content/browser/service_worker/embedded_worker_instance.cc
+++ b/content/browser/service_worker/embedded_worker_instance.cc
@@ -56,6 +56,19 @@ void NotifyWorkerStopIgnoredOnUI(int worker_process_id, int worker_route_id) {
worker_process_id, worker_route_id);
}
+void NotifyWorkerVersionInstalledOnUI(int worker_process_id,
+ int worker_route_id) {
+ DCHECK_CURRENTLY_ON(BrowserThread::UI);
+ ServiceWorkerDevToolsManager::GetInstance()->WorkerVersionInstalled(
+ worker_process_id, worker_route_id);
+}
+
+void NotifyWorkerVersionDoomedOnUI(int worker_process_id, int worker_route_id) {
+ DCHECK_CURRENTLY_ON(BrowserThread::UI);
+ ServiceWorkerDevToolsManager::GetInstance()->WorkerVersionDoomed(
+ worker_process_id, worker_route_id);
+}
+
void RegisterToWorkerDevToolsManagerOnUI(
int process_id,
const ServiceWorkerContextCore* service_worker_context,
@@ -63,6 +76,7 @@ void RegisterToWorkerDevToolsManagerOnUI(
int64_t service_worker_version_id,
const GURL& url,
const GURL& scope,
+ bool is_installed,
const base::Callback<void(int worker_devtools_agent_route_id,
bool wait_for_debugger)>& callback) {
DCHECK_CURRENTLY_ON(BrowserThread::UI);
@@ -76,7 +90,8 @@ void RegisterToWorkerDevToolsManagerOnUI(
process_id, worker_devtools_agent_route_id,
ServiceWorkerDevToolsManager::ServiceWorkerIdentifier(
service_worker_context, service_worker_context_weak,
- service_worker_version_id, url, scope));
+ service_worker_version_id, url, scope),
+ is_installed);
}
BrowserThread::PostTask(
BrowserThread::IO,
@@ -133,6 +148,20 @@ class EmbeddedWorkerInstance::DevToolsProxy : public base::NonThreadSafe {
process_id_, agent_route_id_));
}
+ void NotifyWorkerVersionInstalled() {
+ DCHECK(CalledOnValidThread());
+ BrowserThread::PostTask(BrowserThread::UI, FROM_HERE,
+ base::Bind(NotifyWorkerVersionInstalledOnUI,
+ process_id_, agent_route_id_));
+ }
+
+ void NotifyWorkerVersionDoomed() {
+ DCHECK(CalledOnValidThread());
+ BrowserThread::PostTask(BrowserThread::UI, FROM_HERE,
+ base::Bind(NotifyWorkerVersionDoomedOnUI,
+ process_id_, agent_route_id_));
+ }
+
int agent_route_id() const { return agent_route_id_; }
private:
@@ -316,7 +345,7 @@ class EmbeddedWorkerInstance::StartTask {
BrowserThread::UI, FROM_HERE,
base::Bind(RegisterToWorkerDevToolsManagerOnUI, process_id,
instance_->context_.get(), instance_->context_,
- service_worker_version_id, script_url, scope,
+ service_worker_version_id, script_url, scope, is_installed_,
base::Bind(&StartTask::OnRegisteredToDevToolsManager,
weak_factory_.GetWeakPtr(), base::Passed(&params),
is_new_process)));
@@ -578,6 +607,16 @@ void EmbeddedWorkerInstance::OnURLJobCreatedForMainScript() {
}
}
+void EmbeddedWorkerInstance::OnWorkerVersionInstalled() {
+ if (devtools_proxy_)
+ devtools_proxy_->NotifyWorkerVersionInstalled();
+}
+
+void EmbeddedWorkerInstance::OnWorkerVersionDoomed() {
+ if (devtools_proxy_)
+ devtools_proxy_->NotifyWorkerVersionDoomed();
+}
+
void EmbeddedWorkerInstance::OnThreadStarted(int thread_id) {
if (!inflight_start_task_)
return;
« no previous file with comments | « content/browser/service_worker/embedded_worker_instance.h ('k') | content/browser/service_worker/service_worker_version.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698