From 5567baf33500b5cd7d4026553dc7b26dc1800146 Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Wed, 13 Jan 2016 11:21:16 +0800 Subject: [PATCH] Add webFrame.insertText API --- atom/renderer/api/atom_api_web_frame.cc | 7 ++++++- atom/renderer/api/atom_api_web_frame.h | 3 +++ docs/api/web-frame.md | 6 ++++++ 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/atom/renderer/api/atom_api_web_frame.cc b/atom/renderer/api/atom_api_web_frame.cc index 83d67a8..276f833 100644 --- a/atom/renderer/api/atom_api_web_frame.cc +++ b/atom/renderer/api/atom_api_web_frame.cc @@ -116,6 +116,10 @@ void WebFrame::RegisterURLSchemeAsPrivileged(const std::string& scheme) { privileged_scheme); } +void WebFrame::InsertText(const std::string& text) { + web_frame_->insertText(blink::WebString::fromUTF8(text)); +} + mate::ObjectTemplateBuilder WebFrame::GetObjectTemplateBuilder( v8::Isolate* isolate) { return mate::ObjectTemplateBuilder(isolate) @@ -136,7 +140,8 @@ mate::ObjectTemplateBuilder WebFrame::GetObjectTemplateBuilder( .SetMethod("registerURLSchemeAsBypassingCSP", &WebFrame::RegisterURLSchemeAsBypassingCSP) .SetMethod("registerURLSchemeAsPrivileged", - &WebFrame::RegisterURLSchemeAsPrivileged); + &WebFrame::RegisterURLSchemeAsPrivileged) + .SetMethod("insertText", &WebFrame::InsertText); } // static diff --git a/atom/renderer/api/atom_api_web_frame.h b/atom/renderer/api/atom_api_web_frame.h index 95a5a82..42175e1 100644 --- a/atom/renderer/api/atom_api_web_frame.h +++ b/atom/renderer/api/atom_api_web_frame.h @@ -60,6 +60,9 @@ class WebFrame : public mate::Wrappable { void RegisterURLSchemeAsBypassingCSP(const std::string& scheme); void RegisterURLSchemeAsPrivileged(const std::string& scheme); + // Editing. + void InsertText(const std::string& text); + // mate::Wrappable: virtual mate::ObjectTemplateBuilder GetObjectTemplateBuilder( v8::Isolate* isolate); diff --git a/docs/api/web-frame.md b/docs/api/web-frame.md index 114afd0..6c4c9d8 100644 --- a/docs/api/web-frame.md +++ b/docs/api/web-frame.md @@ -90,4 +90,10 @@ Content Security Policy. Registers the `scheme` as secure, bypasses content security policy for resources, allows registering ServiceWorker and supports fetch API. +### `webFrame.insertText(text)` + +* `text` String + +* Inserts `text` to the focused element. + [spellchecker]: https://github.com/atom/node-spellchecker -- 2.7.4