Commit 547e7652 authored by Julie Jeongeun Kim's avatar Julie Jeongeun Kim Committed by Commit Bot

Convert DistillerJavaScriptService to new Mojo types

This CL converts DistillerJavaScriptServicePtr and
DistillerJavaScriptServiceRequest to new Mojo types.

It uses Remote and PendingReceiver instead of
DistillerJavaScriptServicePtr and
DistillerJavaScriptServiceRequest.

Bug: 955171
Change-Id: I3ed215819ca30938263d2889f4e668765b7ed59c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1810158Reviewed-by: default avatarOksana Zhuravlova <oksamyt@chromium.org>
Reviewed-by: default avatarBen Greenstein <bengr@chromium.org>
Commit-Queue: Julie Kim <jkim@igalia.com>
Cr-Commit-Position: refs/heads/master@{#697866}
parent d8181ae8
......@@ -10,7 +10,7 @@
#include "base/metrics/user_metrics.h"
#include "components/dom_distiller/content/browser/distiller_ui_handle.h"
#include "components/dom_distiller/core/feedback_reporter.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
#include "mojo/public/cpp/bindings/self_owned_receiver.h"
namespace dom_distiller {
......@@ -33,11 +33,11 @@ void DistillerJavaScriptServiceImpl::HandleDistillerOpenSettingsCall() {
void CreateDistillerJavaScriptService(
DistillerUIHandle* distiller_ui_handle,
mojom::DistillerJavaScriptServiceRequest request,
mojo::PendingReceiver<mojom::DistillerJavaScriptService> receiver,
content::RenderFrameHost* render_frame_host) {
mojo::MakeStrongBinding(std::make_unique<DistillerJavaScriptServiceImpl>(
render_frame_host, distiller_ui_handle),
std::move(request));
mojo::MakeSelfOwnedReceiver(std::make_unique<DistillerJavaScriptServiceImpl>(
render_frame_host, distiller_ui_handle),
std::move(receiver));
}
} // namespace dom_distiller
......@@ -8,7 +8,7 @@
#include "base/macros.h"
#include "components/dom_distiller/content/browser/distiller_ui_handle.h"
#include "components/dom_distiller/content/common/mojom/distiller_javascript_service.mojom.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
namespace dom_distiller {
......@@ -35,7 +35,7 @@ class DistillerJavaScriptServiceImpl
// static
void CreateDistillerJavaScriptService(
DistillerUIHandle* distiller_ui_handle,
mojom::DistillerJavaScriptServiceRequest request,
mojo::PendingReceiver<mojom::DistillerJavaScriptService> receiver,
content::RenderFrameHost* render_frame_host);
} // namespace dom_distiller
......
......@@ -65,8 +65,9 @@ void DistillerNativeJavaScript::BindFunctionToObject(
}
void DistillerNativeJavaScript::EnsureServiceConnected() {
if (!distiller_js_service_ || !distiller_js_service_.is_bound()) {
render_frame_->GetRemoteInterfaces()->GetInterface(&distiller_js_service_);
if (!distiller_js_service_) {
render_frame_->GetRemoteInterfaces()->GetInterface(
distiller_js_service_.BindNewPipeAndPassReceiver());
}
}
......
......@@ -8,6 +8,7 @@
#include "components/dom_distiller/content/common/mojom/distiller_javascript_service.mojom.h"
#include "content/public/renderer/render_frame.h"
#include "content/public/renderer/render_frame_observer.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "v8/include/v8.h"
namespace dom_distiller {
......@@ -35,7 +36,7 @@ class DistillerNativeJavaScript {
void EnsureServiceConnected();
content::RenderFrame* render_frame_;
mojom::DistillerJavaScriptServicePtr distiller_js_service_;
mojo::Remote<mojom::DistillerJavaScriptService> distiller_js_service_;
};
// static
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment