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

Unified Diff: chrome/renderer/extensions/cast_streaming_native_handler.cc

Issue 2770403002: [Extensions Bindings] Remove ScriptContext::DispatchEvent (Closed)
Patch Set: Created 3 years, 9 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/renderer/extensions/cast_streaming_native_handler.cc
diff --git a/chrome/renderer/extensions/cast_streaming_native_handler.cc b/chrome/renderer/extensions/cast_streaming_native_handler.cc
index 38ab2ae7408a3acac7fb5e813348139a593be654..b2547f6579c77fc7bed54b567e424b6b3d99e40f 100644
--- a/chrome/renderer/extensions/cast_streaming_native_handler.cc
+++ b/chrome/renderer/extensions/cast_streaming_native_handler.cc
@@ -33,6 +33,7 @@
#include "content/public/child/v8_value_converter.h"
#include "content/public/renderer/media_stream_utils.h"
#include "extensions/common/extension.h"
+#include "extensions/renderer/extension_bindings_system.h"
#include "extensions/renderer/script_context.h"
#include "media/base/audio_parameters.h"
#include "media/base/limits.h"
@@ -294,12 +295,15 @@ void FromFrameSenderConfig(const FrameSenderConfig& config,
// extension. Collision will happen when the first RTP stream keeps alive after
// creating another 64k-1 RTP streams in the same extension, which is very
// unlikely to happen in normal use cases.
-CastStreamingNativeHandler::CastStreamingNativeHandler(ScriptContext* context)
+CastStreamingNativeHandler::CastStreamingNativeHandler(
+ ScriptContext* context,
+ ExtensionBindingsSystem* bindings_system)
: ObjectBackedNativeHandler(context),
last_transport_id_(
context->extension()
? (((base::Hash(context->extension()->id()) & 0x7fff) << 16) + 1)
: 1),
+ bindings_system_(bindings_system),
weak_factory_(this) {
RouteFunction("CreateSession", "cast.streaming.session",
base::Bind(&CastStreamingNativeHandler::CreateCastSession,
@@ -447,36 +451,27 @@ void CastStreamingNativeHandler::CallCreateCallback(
}
void CastStreamingNativeHandler::CallStartCallback(int stream_id) const {
- v8::Isolate* isolate = context()->isolate();
- v8::HandleScope handle_scope(isolate);
- v8::Context::Scope context_scope(context()->v8_context());
- v8::Local<v8::Array> event_args = v8::Array::New(isolate, 1);
- event_args->Set(0, v8::Integer::New(isolate, stream_id));
- context()->DispatchEvent("cast.streaming.rtpStream.onStarted", event_args);
+ base::ListValue event_args;
+ event_args.AppendInteger(stream_id);
+ bindings_system_->DispatchEventInContext("cast.streaming.rtpStream.onStarted",
+ &event_args, nullptr, context());
}
void CastStreamingNativeHandler::CallStopCallback(int stream_id) const {
- v8::Isolate* isolate = context()->isolate();
- v8::HandleScope handle_scope(isolate);
- v8::Context::Scope context_scope(context()->v8_context());
- v8::Local<v8::Array> event_args = v8::Array::New(isolate, 1);
- event_args->Set(0, v8::Integer::New(isolate, stream_id));
- context()->DispatchEvent("cast.streaming.rtpStream.onStopped", event_args);
+ base::ListValue event_args;
+ event_args.AppendInteger(stream_id);
+ bindings_system_->DispatchEventInContext("cast.streaming.rtpStream.onStopped",
+ &event_args, nullptr, context());
}
void CastStreamingNativeHandler::CallErrorCallback(
int stream_id,
const std::string& message) const {
- v8::Isolate* isolate = context()->isolate();
- v8::HandleScope handle_scope(isolate);
- v8::Context::Scope context_scope(context()->v8_context());
- v8::Local<v8::Array> event_args = v8::Array::New(isolate, 2);
- event_args->Set(0, v8::Integer::New(isolate, stream_id));
- event_args->Set(
- 1,
- v8::String::NewFromUtf8(
- isolate, message.data(), v8::String::kNormalString, message.size()));
- context()->DispatchEvent("cast.streaming.rtpStream.onError", event_args);
+ base::ListValue event_args;
+ event_args.AppendInteger(stream_id);
+ event_args.AppendString(message);
+ bindings_system_->DispatchEventInContext("cast.streaming.rtpStream.onError",
+ &event_args, nullptr, context());
}
void CastStreamingNativeHandler::DestroyCastRtpStream(

Powered by Google App Engine
This is Rietveld 408576698