Commit 9f642045 authored by Miyoung Shin's avatar Miyoung Shin Committed by Commit Bot

Convert SpeechRecognizer to new Mojo types

This CL converts SpeechRecognizerPtr in blink and
SpeechRecognizerRequest in content to the new Mojo types.

Bug: 955171, 978694
Change-Id: I651a16c2d5982eb5a9f4004fa5b09d8be829ddd3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1775683Reviewed-by: default avatarTommi <tommi@chromium.org>
Reviewed-by: default avatarOlga Sharonova <olka@chromium.org>
Reviewed-by: default avatarOksana Zhuravlova <oksamyt@chromium.org>
Commit-Queue: Miyoung Shin <myid.shin@igalia.com>
Cr-Commit-Position: refs/heads/master@{#691923}
parent ffe970cc
......@@ -26,7 +26,7 @@
#include "content/public/browser/storage_partition.h"
#include "content/public/common/content_client.h"
#include "content/public/common/content_switches.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
#include "mojo/public/cpp/bindings/self_owned_receiver.h"
#include "services/network/public/cpp/shared_url_loader_factory.h"
namespace content {
......@@ -44,10 +44,10 @@ SpeechRecognitionDispatcherHost::SpeechRecognitionDispatcherHost(
void SpeechRecognitionDispatcherHost::Create(
int render_process_id,
int render_frame_id,
blink::mojom::SpeechRecognizerRequest request) {
mojo::MakeStrongBinding(std::make_unique<SpeechRecognitionDispatcherHost>(
render_process_id, render_frame_id),
std::move(request));
mojo::PendingReceiver<blink::mojom::SpeechRecognizer> receiver) {
mojo::MakeSelfOwnedReceiver(std::make_unique<SpeechRecognitionDispatcherHost>(
render_process_id, render_frame_id),
std::move(receiver));
}
SpeechRecognitionDispatcherHost::~SpeechRecognitionDispatcherHost() {}
......
......@@ -14,7 +14,7 @@
#include "content/public/browser/browser_message_filter.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/speech_recognition_event_listener.h"
#include "mojo/public/cpp/bindings/binding.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "third_party/blink/public/mojom/speech/speech_recognizer.mojom.h"
namespace network {
......@@ -34,9 +34,10 @@ class CONTENT_EXPORT SpeechRecognitionDispatcherHost
public:
SpeechRecognitionDispatcherHost(int render_process_id, int render_frame_id);
~SpeechRecognitionDispatcherHost() override;
static void Create(int render_process_id,
int render_frame_id,
blink::mojom::SpeechRecognizerRequest request);
static void Create(
int render_process_id,
int render_frame_id,
mojo::PendingReceiver<blink::mojom::SpeechRecognizer> receiver);
base::WeakPtr<SpeechRecognitionDispatcherHost> AsWeakPtr();
// blink::mojom::SpeechRecognizer implementation
......
......@@ -72,7 +72,7 @@ void SpeechRecognitionController::Start(
msg_params->client = std::move(session_client);
msg_params->session_request = std::move(session_request);
GetSpeechRecognizer().Start(std::move(msg_params));
GetSpeechRecognizer()->Start(std::move(msg_params));
}
void ProvideSpeechRecognitionTo(LocalFrame& frame) {
......@@ -80,13 +80,13 @@ void ProvideSpeechRecognitionTo(LocalFrame& frame) {
frame, SpeechRecognitionController::Create(frame));
}
mojom::blink::SpeechRecognizer&
mojo::Remote<mojom::blink::SpeechRecognizer>&
SpeechRecognitionController::GetSpeechRecognizer() {
if (!speech_recognizer_) {
GetSupplementable()->GetInterfaceProvider().GetInterface(
mojo::MakeRequest(&speech_recognizer_));
speech_recognizer_.BindNewPipeAndPassReceiver());
}
return *speech_recognizer_;
return speech_recognizer_;
}
} // namespace blink
......@@ -28,6 +28,7 @@
#include <memory>
#include "mojo/public/cpp/bindings/remote.h"
#include "third_party/blink/public/mojom/speech/speech_recognizer.mojom-blink.h"
#include "third_party/blink/renderer/core/frame/local_frame.h"
#include "third_party/blink/renderer/modules/modules_export.h"
......@@ -61,9 +62,9 @@ class SpeechRecognitionController final
}
private:
mojom::blink::SpeechRecognizer& GetSpeechRecognizer();
mojo::Remote<mojom::blink::SpeechRecognizer>& GetSpeechRecognizer();
mojom::blink::SpeechRecognizerPtr speech_recognizer_;
mojo::Remote<mojom::blink::SpeechRecognizer> speech_recognizer_;
};
MODULES_EXPORT void ProvideSpeechRecognitionTo(LocalFrame& frame);
......
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