summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Rossi <pierre.rossi@theqtcompany.com>2015-03-17 13:47:07 +0100
committerAndras Becsi <andras.becsi@theqtcompany.com>2015-04-07 11:18:19 +0000
commitd8daba265ba260b41899fe817ee0fb8833441979 (patch)
tree2eb09845f07caec817ec7692dbf7ec75c160f901
parent4b54390776be207d64852e560f323deef7b0b7fc (diff)
downloadqtwebengine-d8daba265ba260b41899fe817ee0fb8833441979.tar.gz
Revive ReloadAndBypassCache
Appears to be an oversight for widgets, as the API was there, but just wasn't wired. Also add it for QQuickWebEngineView while we're at it. Change-Id: I07d6e356cbaf22b79f3fc5a82df78c6821993e8d Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
-rw-r--r--src/core/web_contents_adapter.cpp7
-rw-r--r--src/core/web_contents_adapter.h1
-rw-r--r--src/webengine/api/qquickwebengineview.cpp8
-rw-r--r--src/webengine/api/qquickwebengineview_p.h1
-rw-r--r--src/webenginewidgets/api/qwebenginepage.cpp3
5 files changed, 20 insertions, 0 deletions
diff --git a/src/core/web_contents_adapter.cpp b/src/core/web_contents_adapter.cpp
index c5cd83c6e..2ccaf399c 100644
--- a/src/core/web_contents_adapter.cpp
+++ b/src/core/web_contents_adapter.cpp
@@ -454,6 +454,13 @@ void WebContentsAdapter::reload()
d->webContents->Focus();
}
+void WebContentsAdapter::reloadAndBypassCache()
+{
+ Q_D(WebContentsAdapter);
+ d->webContents->GetController().ReloadIgnoringCache(/*checkRepost = */false);
+ d->webContents->Focus();
+}
+
void WebContentsAdapter::load(const QUrl &url)
{
// The situation can occur when relying on the editingFinished signal in QML to set the url
diff --git a/src/core/web_contents_adapter.h b/src/core/web_contents_adapter.h
index f4b434353..5ea55c1b8 100644
--- a/src/core/web_contents_adapter.h
+++ b/src/core/web_contents_adapter.h
@@ -74,6 +74,7 @@ public:
bool canGoForward() const;
void stop();
void reload();
+ void reloadAndBypassCache();
void load(const QUrl&);
void setContent(const QByteArray &data, const QString &mimeType, const QUrl &baseUrl);
QUrl activeUrl() const;
diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp
index 2a5097597..bc58e2526 100644
--- a/src/webengine/api/qquickwebengineview.cpp
+++ b/src/webengine/api/qquickwebengineview.cpp
@@ -665,6 +665,14 @@ void QQuickWebEngineView::reload()
d->adapter->reload();
}
+void QQuickWebEngineView::reloadAndBypassCache()
+{
+ Q_D(QQuickWebEngineView);
+ if (!d->adapter)
+ return;
+ d->adapter->reloadAndBypassCache();
+}
+
void QQuickWebEngineView::stop()
{
Q_D(QQuickWebEngineView);
diff --git a/src/webengine/api/qquickwebengineview_p.h b/src/webengine/api/qquickwebengineview_p.h
index c84a65805..4539ad34b 100644
--- a/src/webengine/api/qquickwebengineview_p.h
+++ b/src/webengine/api/qquickwebengineview_p.h
@@ -207,6 +207,7 @@ public Q_SLOTS:
void goForward();
void goBackOrForward(int index);
void reload();
+ void reloadAndBypassCache();
void stop();
Q_REVISION(1) void findText(const QString &subString, FindFlags options = 0, const QJSValue &callback = QJSValue());
Q_REVISION(1) void fullScreenCancelled();
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp
index 65a0a5bed..55bd67e5e 100644
--- a/src/webenginewidgets/api/qwebenginepage.cpp
+++ b/src/webenginewidgets/api/qwebenginepage.cpp
@@ -646,6 +646,9 @@ void QWebEnginePage::triggerAction(WebAction action, bool)
case Reload:
d->adapter->reload();
break;
+ case ReloadAndBypassCache:
+ d->adapter->reloadAndBypassCache();
+ break;
case Cut:
d->adapter->cut();
break;