Caching object templates for Event, fixes #705
This commit is contained in:
parent
4dd7848084
commit
e4a71b86df
2 changed files with 15 additions and 4 deletions
|
@ -11,6 +11,12 @@
|
||||||
|
|
||||||
namespace mate {
|
namespace mate {
|
||||||
|
|
||||||
|
namespace {
|
||||||
|
|
||||||
|
v8::Persistent<v8::ObjectTemplate> template_;
|
||||||
|
|
||||||
|
} // namespace
|
||||||
|
|
||||||
Event::Event()
|
Event::Event()
|
||||||
: sender_(NULL),
|
: sender_(NULL),
|
||||||
message_(NULL),
|
message_(NULL),
|
||||||
|
@ -21,9 +27,14 @@ Event::~Event() {
|
||||||
}
|
}
|
||||||
|
|
||||||
ObjectTemplateBuilder Event::GetObjectTemplateBuilder(v8::Isolate* isolate) {
|
ObjectTemplateBuilder Event::GetObjectTemplateBuilder(v8::Isolate* isolate) {
|
||||||
return ObjectTemplateBuilder(isolate)
|
if (template_.IsEmpty())
|
||||||
.SetMethod("preventDefault", &Event::PreventDefault)
|
template_.Reset(isolate, ObjectTemplateBuilder(isolate)
|
||||||
.SetMethod("sendReply", &Event::SendReply);
|
.SetMethod("preventDefault", &Event::PreventDefault)
|
||||||
|
.SetMethod("sendReply", &Event::SendReply)
|
||||||
|
.Build());
|
||||||
|
|
||||||
|
return ObjectTemplateBuilder(
|
||||||
|
isolate, v8::Local<v8::ObjectTemplate>::New(isolate, template_));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Event::SetSenderAndMessage(content::WebContents* sender,
|
void Event::SetSenderAndMessage(content::WebContents* sender,
|
||||||
|
|
2
vendor/native_mate
vendored
2
vendor/native_mate
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit c5b39126ee7388acc61a25ac6b5fefb7a2cd6262
|
Subproject commit cc9d22292361e8b74e82a4e6a77407c17b4bfda7
|
Loading…
Add table
Add a link
Reference in a new issue