[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: playground/libs/webkitkde
From: Michael David Howell <mhowell123 () gmail ! com>
Date: 2009-04-22 22:59:04
Message-ID: 1240441144.183476.26027.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 957817 by michaelhowell:
Add new method, KWebView::load(), as a convenience similar to QWebView::load().
M +17 -0 kdewebkit/kwebview.cpp
M +10 -0 kdewebkit/kwebview.h
M +1 -1 part/webkitpart.cpp
M +1 -0 part/webpage.cpp
--- trunk/playground/libs/webkitkde/kdewebkit/kwebview.cpp #957816:957817
@@ -29,11 +29,14 @@
#include <KDE/KUrl>
#include <KDE/KDebug>
+#include <kparts/part.h> // Where's the Qt includes?
+#include <kparts/browserextension.h>
#include <QtGui/QApplication>
#include <QtGui/QClipboard>
#include <QtGui/QMouseEvent>
#include <QtWebKit/QWebFrame>
+#include <QtNetwork/QNetworkRequest>
class KWebView::KWebViewPrivate
{
@@ -176,3 +179,17 @@
d->searchBar->setFoundMatch(status);
}
+void KWebView::load(const KUrl &url, const KParts::OpenUrlArguments &args, const KParts::BrowserArguments &bargs) {
+ QNetworkRequest req;
+
+ req.setUrl(url);
+ if (args.reload()) pageAction(KWebPage::Reload)->trigger();
+ req.setRawHeader("Referer", args.metaData()["referrer"].toUtf8());
+
+ if (bargs.postData.isEmpty()) {
+ QWebView::load(req);
+ } else {
+ QWebView::load(req, QNetworkAccessManager::PostOperation, bargs.postData);
+ }
+}
+
--- trunk/playground/libs/webkitkde/kdewebkit/kwebview.h #957816:957817
@@ -34,6 +34,11 @@
class KUrl;
class QMouseEvent;
class QWheelEvent;
+namespace KParts
+{
+class OpenUrlArguments;
+class BrowserArguments;
+}
class KDE_EXPORT KWebView : public QWebView
{
@@ -47,6 +52,11 @@
public Q_SLOTS:
void setCustomContextMenu(bool show);
+ /**
+ * similar to load(const QNetworkRequest&, QNetworkAccessManager::Operation), but for KParts-style arguments instead.
+ */
+ void load(const KUrl &url, const KParts::OpenUrlArguments &args, const KParts::BrowserArguments &bargs);
+
Q_SIGNALS:
void showContextMenu(QContextMenuEvent *event);
void openUrl(const KUrl &url);
--- trunk/playground/libs/webkitkde/part/webkitpart.cpp #957816:957817
@@ -148,7 +148,7 @@
{
setUrl(url);
- m_webView->load(url);
+ m_webView->load(url, arguments(), browserExtension()->browserArguments());
return true;
}
--- trunk/playground/libs/webkitkde/part/webpage.cpp #957816:957817
@@ -71,6 +71,7 @@
kDebug() << type;
KParts::ReadOnlyPart *part = 0;
KParts::OpenUrlArguments args;
+ args.metaData()["referrer"] = mainFrame()->url().toString();
//if (type == WebModalDialog) //TODO: correct behavior?
args.metaData()["forcenewwindow"] = "true";
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic