summaryrefslogtreecommitdiffstats
path: root/src/core/api/qwebenginepage.cpp
diff options
context:
space:
mode:
authorKirill Burtsev <kirill.burtsev@qt.io>2021-06-03 14:49:27 +0200
committerKirill Burtsev <kirill.burtsev@qt.io>2021-06-08 08:58:04 +0200
commita9795a11874b7f50ee91a9191d5c3ed4294537b7 (patch)
treeb8c57e970081be288dae4fdc9ce4139fffe5bda7 /src/core/api/qwebenginepage.cpp
parentc43661d01bad15a39c361cf054d0af093d5c0f81 (diff)
QWebEnginePage: add new 'loading' property and expose QWebEngineLoadingInfo
[ChangeLog][QWebEngineWidgets][QWebEnginePage] QWebEngineLoadingInfo is now exposed on loadingChanged signal with new 'loading' property Fixes: QTBUG-53333 Task-number: QTBUG-61100 Change-Id: I7773030726faeb1d65cc85a4d688a80f6dbe2c80 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/core/api/qwebenginepage.cpp')
-rw-r--r--src/core/api/qwebenginepage.cpp28
1 files changed, 23 insertions, 5 deletions
diff --git a/src/core/api/qwebenginepage.cpp b/src/core/api/qwebenginepage.cpp
index 5298849f8..d073b4996 100644
--- a/src/core/api/qwebenginepage.cpp
+++ b/src/core/api/qwebenginepage.cpp
@@ -301,20 +301,23 @@ QColor QWebEnginePagePrivate::backgroundColor() const
return m_backgroundColor;
}
-void QWebEnginePagePrivate::loadStarted(QWebEngineLoadingInfo /* info */)
+void QWebEnginePagePrivate::loadStarted(QWebEngineLoadingInfo info)
{
Q_Q(QWebEnginePage);
isLoading = true;
- QTimer::singleShot(0, q, &QWebEnginePage::loadStarted);
+ QTimer::singleShot(0, q, [q, info = std::move(info)] () {
+ Q_EMIT q->loadStarted();
+ Q_EMIT q->loadingChanged(info);
+ });
}
void QWebEnginePagePrivate::loadFinished(QWebEngineLoadingInfo info)
{
Q_Q(QWebEnginePage);
isLoading = false;
- bool success = info.status() == QWebEngineLoadingInfo::LoadSucceededStatus;
- QTimer::singleShot(0, q, [q, success] () {
- emit q->loadFinished(success);
+ QTimer::singleShot(0, q, [q, info = std::move(info)] () {
+ Q_EMIT q->loadFinished(info.status() == QWebEngineLoadingInfo::LoadSucceededStatus);
+ Q_EMIT q->loadingChanged(info);
});
}
@@ -1863,6 +1866,21 @@ void QWebEnginePage::download(const QUrl& url, const QString& filename)
d->adapter->download(url, filename);
}
+/*!
+ \property QWebEnginePage::loading
+ \since 6.2
+
+ \brief Whether the page is currently loading.
+
+ The \l loadingChanged() signal is emitted when loading the page begins, ends, or fails.
+
+ \sa QWebEngineLoadingInfo, loadStarted, loadFinished
+*/
+bool QWebEnginePage::isLoading() const
+{
+ return d_ptr->isLoading;
+}
+
void QWebEnginePage::load(const QUrl& url)
{
Q_D(QWebEnginePage);