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

Unified Diff: chrome/browser/chromeos/arc/arc_intent_helper_bridge.cc

Issue 1610813003: Merge arc/common/settings.mojom into intent_helper.mojom (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: address comments Created 4 years, 11 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/chromeos/arc/arc_intent_helper_bridge.cc
diff --git a/chrome/browser/chromeos/arc/arc_intent_helper_bridge.cc b/chrome/browser/chromeos/arc/arc_intent_helper_bridge.cc
index 0a87752fbcac7a6caeb0a9e0c8131b1f6511865b..cc9d5f839d115ad1a6033a0fff884e1c30f37312 100644
--- a/chrome/browser/chromeos/arc/arc_intent_helper_bridge.cc
+++ b/chrome/browser/chromeos/arc/arc_intent_helper_bridge.cc
@@ -4,6 +4,7 @@
#include "chrome/browser/chromeos/arc/arc_intent_helper_bridge.h"
+#include "base/json/json_writer.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/ui/ash/multi_user/multi_user_util.h"
#include "chrome/browser/ui/browser.h"
@@ -27,6 +28,11 @@ void ArcIntentHelperBridge::OnIntentHelperInstanceReady() {
IntentHelperHostPtr host;
binding_.Bind(mojo::GetProxy(&host));
arc_bridge_service()->intent_helper_instance()->Init(std::move(host));
+ settings_bridge_.reset(new SettingsBridge(this));
+}
+
+void ArcIntentHelperBridge::OnIntentHelperInstanceClosed() {
+ settings_bridge_.reset();
}
void ArcIntentHelperBridge::OnOpenUrl(const mojo::String& url) {
@@ -45,4 +51,23 @@ void ArcIntentHelperBridge::OnOpenUrl(const mojo::String& url) {
displayer.browser()->window()->GetNativeWindow());
}
+void ArcIntentHelperBridge::OnBroadcastNeeded(
+ const std::string& action,
+ const base::DictionaryValue& extras) {
+ if (arc_bridge_service()->state() != ArcBridgeService::State::READY) {
+ LOG(ERROR) << "Bridge service is not ready.";
+ return;
+ }
+
+ std::string extras_json;
+ bool write_success = base::JSONWriter::Write(extras, &extras_json);
+ DCHECK(write_success);
+
+ if (arc_bridge_service()->intent_helper_version() >= 1) {
+ arc_bridge_service()->intent_helper_instance()->SendBroadcast(
+ action, "org.chromium.arc.intent_helper",
+ "org.chromium.arc.intent_helper.SettingsReceiver", extras_json);
+ }
+}
+
} // namespace arc
« no previous file with comments | « chrome/browser/chromeos/arc/arc_intent_helper_bridge.h ('k') | chrome/browser/chromeos/arc/arc_settings_bridge.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698