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

Unified Diff: mojo/shell/application_instance.cc

Issue 1728083002: Extract a Connector interface from Shell that can be cloned & passed to other threads (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@12uid
Patch Set: . Created 4 years, 10 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 | « mojo/shell/application_instance.h ('k') | mojo/shell/application_manager.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mojo/shell/application_instance.cc
diff --git a/mojo/shell/application_instance.cc b/mojo/shell/application_instance.cc
index 33b9a48b7095407a7e1ded68360e2e3a1afa297d..df2cfb7373a515e5fc0dc06dadeabcdd8a2359d4 100644
--- a/mojo/shell/application_instance.cc
+++ b/mojo/shell/application_instance.cc
@@ -33,7 +33,7 @@ ApplicationInstance::ApplicationInstance(
queue_requests_(false),
native_runner_(nullptr),
pid_(base::kNullProcessId) {
- DCHECK_NE(Shell::kInvalidApplicationID, id_);
+ DCHECK_NE(kInvalidApplicationID, id_);
}
ApplicationInstance::~ApplicationInstance() {
@@ -67,6 +67,18 @@ void ApplicationInstance::BindPIDReceiver(
}
// Shell implementation:
+void ApplicationInstance::GetConnector(mojom::ConnectorRequest request) {
+ connectors_.AddBinding(this, std::move(request));
+}
+
+void ApplicationInstance::QuitApplication() {
+ queue_requests_ = true;
+ shell_client_->OnQuitRequested(
+ base::Bind(&ApplicationInstance::OnQuitRequestedResult,
+ base::Unretained(this)));
+}
+
+// Connector implementation:
void ApplicationInstance::Connect(
const String& app_url,
uint32_t user_id,
@@ -101,11 +113,8 @@ void ApplicationInstance::Connect(
}
}
-void ApplicationInstance::QuitApplication() {
- queue_requests_ = true;
- shell_client_->OnQuitRequested(
- base::Bind(&ApplicationInstance::OnQuitRequestedResult,
- base::Unretained(this)));
+void ApplicationInstance::Clone(mojom::ConnectorRequest request) {
+ connectors_.AddBinding(this, std::move(request));
}
void ApplicationInstance::SetPID(uint32_t pid) {
@@ -114,9 +123,9 @@ void ApplicationInstance::SetPID(uint32_t pid) {
}
uint32_t ApplicationInstance::GenerateUniqueID() const {
- static uint32_t id = Shell::kInvalidApplicationID;
+ static uint32_t id = kInvalidApplicationID;
++id;
- CHECK_NE(Shell::kInvalidApplicationID, id);
+ CHECK_NE(kInvalidApplicationID, id);
return id;
}
@@ -130,7 +139,7 @@ void ApplicationInstance::CallAcceptConnection(
ApplicationInstance* source =
manager_->GetApplicationInstance(params->source());
- uint32_t source_id = source ? source->id() : Shell::kInvalidApplicationID;
+ uint32_t source_id = source ? source->id() : kInvalidApplicationID;
shell_client_->AcceptConnection(
params->source().url().spec(), params->source().user_id(), source_id,
params->TakeRemoteInterfaces(), params->TakeLocalInterfaces(),
« no previous file with comments | « mojo/shell/application_instance.h ('k') | mojo/shell/application_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698