summaryrefslogtreecommitdiff
path: root/Source/WebKit/chromium/src/WebIntent.cpp
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@nokia.com>2012-05-18 14:03:11 +0200
committerSimon Hausmann <simon.hausmann@nokia.com>2012-05-18 14:03:11 +0200
commit8d473cf9743f1d30a16a27114e93bd5af5648d23 (patch)
treecdca40d0353886b3ca52f33a2d7b8f1c0011aafc /Source/WebKit/chromium/src/WebIntent.cpp
parent1b914638db989aaa98631a1c1e02c7b2d44805d8 (diff)
downloadqtwebkit-8d473cf9743f1d30a16a27114e93bd5af5648d23.tar.gz
Imported WebKit commit 1350e72f7345ced9da2bd9980deeeb5a8d62fab4 (http://svn.webkit.org/repository/webkit/trunk@117578)
Weekly snapshot
Diffstat (limited to 'Source/WebKit/chromium/src/WebIntent.cpp')
-rw-r--r--Source/WebKit/chromium/src/WebIntent.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/Source/WebKit/chromium/src/WebIntent.cpp b/Source/WebKit/chromium/src/WebIntent.cpp
index ce4e15bd6..67723bf93 100644
--- a/Source/WebKit/chromium/src/WebIntent.cpp
+++ b/Source/WebKit/chromium/src/WebIntent.cpp
@@ -32,12 +32,26 @@
#include "WebIntent.h"
#include "Intent.h"
+#include "MessagePort.h"
#include "PlatformMessagePortChannel.h"
#include "SerializedScriptValue.h"
#include <wtf/HashMap.h>
namespace WebKit {
+WebIntent::WebIntent(const WebString& action, const WebString& type, const WebString& data)
+{
+#if ENABLE(WEB_INTENTS)
+ WebCore::ExceptionCode ec = 0;
+ WebCore::MessagePortArray ports;
+ RefPtr<WebCore::Intent> intent = WebCore::Intent::create(action, type, WebCore::SerializedScriptValue::createFromWire(data), ports, ec);
+ if (ec)
+ return;
+
+ m_private = intent.release();
+#endif
+}
+
#if ENABLE(WEB_INTENTS)
WebIntent::WebIntent(const PassRefPtr<WebCore::Intent>& intent)
: m_private(intent)
@@ -130,6 +144,11 @@ WebMessagePortChannelArray* WebIntent::messagePortChannelsRelease() const
return webChannels;
}
+WebIntent::operator WebCore::Intent*() const
+{
+ return m_private.get();
+}
+
WebVector<WebString> WebIntent::extrasNames() const
{
#if ENABLE(WEB_INTENTS)