summaryrefslogtreecommitdiff
path: root/Source/WebKit2/UIProcess/API/cpp/qt
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit2/UIProcess/API/cpp/qt')
-rw-r--r--Source/WebKit2/UIProcess/API/cpp/qt/WKStringQt.cpp8
-rw-r--r--Source/WebKit2/UIProcess/API/cpp/qt/WKStringQt.h5
-rw-r--r--Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.cpp33
-rw-r--r--Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.h13
4 files changed, 53 insertions, 6 deletions
diff --git a/Source/WebKit2/UIProcess/API/cpp/qt/WKStringQt.cpp b/Source/WebKit2/UIProcess/API/cpp/qt/WKStringQt.cpp
index f2f188354..4ae448e62 100644
--- a/Source/WebKit2/UIProcess/API/cpp/qt/WKStringQt.cpp
+++ b/Source/WebKit2/UIProcess/API/cpp/qt/WKStringQt.cpp
@@ -22,6 +22,7 @@
#include "WKStringQt.h"
#include "WKAPICast.h"
+#include "WKRetainPtr.h"
#include <QString>
#include <wtf/RefPtr.h>
#include <wtf/text/WTFString.h>
@@ -41,3 +42,10 @@ QString WKStringCopyQString(WKStringRef stringRef)
const WTF::String& string = toImpl(stringRef)->string();
return QString(reinterpret_cast<const QChar*>(string.characters()), string.length());
}
+
+namespace WebKit {
+QString adoptToQString(WKStringRef stringRef)
+{
+ return WKStringCopyQString(adoptWK(stringRef).get());
+}
+} /* namespace WebKit */
diff --git a/Source/WebKit2/UIProcess/API/cpp/qt/WKStringQt.h b/Source/WebKit2/UIProcess/API/cpp/qt/WKStringQt.h
index cc46e4250..ff2cfa837 100644
--- a/Source/WebKit2/UIProcess/API/cpp/qt/WKStringQt.h
+++ b/Source/WebKit2/UIProcess/API/cpp/qt/WKStringQt.h
@@ -27,4 +27,9 @@
WK_EXPORT WKStringRef WKStringCreateWithQString(const QString& string);
WK_EXPORT QString WKStringCopyQString(WKStringRef string);
+namespace WebKit {
+QString adoptToQString(WKStringRef);
+} /* namespace WebKit */
+
+using WebKit::adoptToQString;
#endif /* WKStringQt_h */
diff --git a/Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.cpp b/Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.cpp
index f9111f7ea..f9177fd59 100644
--- a/Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.cpp
+++ b/Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.cpp
@@ -22,22 +22,45 @@
#include "WKURLQt.h"
#include "WKAPICast.h"
+#include "WKRetainPtr.h"
#include <QString>
#include <wtf/RefPtr.h>
#include <wtf/text/WTFString.h>
using namespace WebKit;
-WKURLRef WKURLCreateWithQUrl(const QUrl& qURL)
+WKURLRef WKURLCreateWithQString(const QString& url)
{
- WTF::String urlString(qURL.toString());
- return toCopiedURLAPI(urlString);
+ return toCopiedURLAPI(url);
+}
+
+QString WKURLCopyQString(WKURLRef urlRef)
+{
+ if (!urlRef)
+ return QString();
+ return toImpl(urlRef)->string();
+}
+
+WKURLRef WKURLCreateWithQUrl(const QUrl& url)
+{
+ return WKURLCreateWithQString(url.toString(QUrl::FullyEncoded));
}
QUrl WKURLCopyQUrl(WKURLRef urlRef)
{
if (!urlRef)
return QUrl();
- const WTF::String& string = toImpl(urlRef)->string();
- return QUrl(QString(reinterpret_cast<const QChar*>(string.characters()), string.length()));
+ return QUrl(WKURLCopyQString(urlRef));
+}
+
+namespace WebKit {
+QString adoptToQString(WKURLRef urlRef)
+{
+ return WKURLCopyQString(adoptWK(urlRef).get());
+}
+
+QUrl adoptToQUrl(WKURLRef urlRef)
+{
+ return WKURLCopyQUrl(adoptWK(urlRef).get());
}
+} /* namespace WebKit */
diff --git a/Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.h b/Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.h
index 2e4147330..b12f97459 100644
--- a/Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.h
+++ b/Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.h
@@ -25,7 +25,18 @@
#include <WebKit2/WKBase.h>
#include <WebKit2/WKURL.h>
+WK_EXPORT WKURLRef WKURLCreateWithQString(const QString& url);
+WK_EXPORT QString WKURLCopyQString(WKURLRef url);
+
WK_EXPORT WKURLRef WKURLCreateWithQUrl(const QUrl& url);
-QUrl WKURLCopyQUrl(WKURLRef url);
+WK_EXPORT QUrl WKURLCopyQUrl(WKURLRef url);
+
+namespace WebKit {
+QString adoptToQString(WKURLRef);
+QUrl adoptToQUrl(WKURLRef);
+} /* namespace WebKit */
+
+using WebKit::adoptToQString;
+using WebKit::adoptToQUrl;
#endif /* WKURLCF_h */