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

Unified Diff: chrome/renderer/extensions/experimental.app_custom_bindings.cc

Issue 10828172: Allow platform apps to respond to Web Intents (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Hooked up observing of source WebContents Created 8 years, 4 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/experimental.app_custom_bindings.cc
diff --git a/chrome/renderer/extensions/experimental.app_custom_bindings.cc b/chrome/renderer/extensions/experimental.app_custom_bindings.cc
index 7e735d2a94913fd05d95249735b7cb744cbc31ad..c90a1ff482c8775c621adfa2fabb264403fba320 100644
--- a/chrome/renderer/extensions/experimental.app_custom_bindings.cc
+++ b/chrome/renderer/extensions/experimental.app_custom_bindings.cc
@@ -7,6 +7,7 @@
#include "base/string_number_conversions.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebBlob.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebSerializedScriptValue.h"
+#include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebCString.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebString.h"
using WebKit::WebBlob;
@@ -26,6 +27,16 @@ v8::Handle<v8::Value> DeserializeString(const v8::Arguments &args) {
return serialized.deserialize();
}
+v8::Handle<v8::Value> SerializeToString(const v8::Arguments &args) {
+ DCHECK(args.Length() == 1);
+ WebSerializedScriptValue data =
+ WebSerializedScriptValue::serialize(args[0]);
+ WebString data_webstring = data.toString();
+
+ std::string v = std::string(data_webstring.utf8());
+ return v8::String::New(v.c_str());
+}
+
v8::Handle<v8::Value> CreateBlob(const v8::Arguments &args) {
DCHECK(args.Length() == 2);
DCHECK(args[0]->IsString());
@@ -47,6 +58,7 @@ namespace extensions {
ExperimentalAppCustomBindings::ExperimentalAppCustomBindings()
: ChromeV8Extension(NULL) {
RouteStaticFunction("DeserializeString", &DeserializeString);
+ RouteStaticFunction("SerializeToString", &SerializeToString);
RouteStaticFunction("CreateBlob", &CreateBlob);
}

Powered by Google App Engine
This is Rietveld 408576698