diff options
Diffstat (limited to 'Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.cpp')
-rw-r--r-- | Source/WebKit2/UIProcess/API/cpp/qt/WKURLQt.cpp | 33 |
1 files changed, 28 insertions, 5 deletions
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 */ |