diff options
Diffstat (limited to 'src/webengine/api')
7 files changed, 14 insertions, 8 deletions
diff --git a/src/webengine/api/qquickwebenginefaviconprovider_p_p.h b/src/webengine/api/qquickwebenginefaviconprovider_p_p.h index 18b6d61c8..4ccc4ba10 100644 --- a/src/webengine/api/qquickwebenginefaviconprovider_p_p.h +++ b/src/webengine/api/qquickwebenginefaviconprovider_p_p.h @@ -72,7 +72,7 @@ public: void detach(QQuickWebEngineView *); - virtual QPixmap requestPixmap(const QString &, QSize *, const QSize &); + QPixmap requestPixmap(const QString &, QSize *, const QSize &) override; private: QQuickWebEngineView *viewForIconUrl(const QUrl &) const; diff --git a/src/webengine/api/qquickwebenginehistory_p.h b/src/webengine/api/qquickwebenginehistory_p.h index 5d4783e96..db0be3bad 100644 --- a/src/webengine/api/qquickwebenginehistory_p.h +++ b/src/webengine/api/qquickwebenginehistory_p.h @@ -73,9 +73,9 @@ public: QQuickWebEngineHistoryListModel(QQuickWebEngineHistoryListModelPrivate*); virtual ~QQuickWebEngineHistoryListModel(); - int rowCount(const QModelIndex& parent = QModelIndex()) const; - QVariant data(const QModelIndex& index, int role) const; - QHash<int, QByteArray> roleNames() const; + int rowCount(const QModelIndex& parent = QModelIndex()) const override; + QVariant data(const QModelIndex& index, int role) const override; + QHash<int, QByteArray> roleNames() const override; void reset(); private: diff --git a/src/webengine/api/qquickwebenginenewviewrequest.cpp b/src/webengine/api/qquickwebenginenewviewrequest.cpp index 0af943de8..78ae1622a 100644 --- a/src/webengine/api/qquickwebenginenewviewrequest.cpp +++ b/src/webengine/api/qquickwebenginenewviewrequest.cpp @@ -117,5 +117,6 @@ void QQuickWebEngineNewViewRequest::openIn(QQuickWebEngineView *view) view->d_func()->adoptWebContents(m_adapter.data()); else view->setUrl(m_requestedUrl); + m_isRequestHandled = true; m_adapter.reset(); } diff --git a/src/webengine/api/qquickwebenginenewviewrequest_p.h b/src/webengine/api/qquickwebenginenewviewrequest_p.h index e21f76111..d4686b291 100644 --- a/src/webengine/api/qquickwebenginenewviewrequest_p.h +++ b/src/webengine/api/qquickwebenginenewviewrequest_p.h @@ -77,6 +77,7 @@ private: QQuickWebEngineNewViewRequest(); QQuickWebEngineView::NewViewDestination m_destination; bool m_isUserInitiated; + bool m_isRequestHandled = false; QSharedPointer<QtWebEngineCore::WebContentsAdapter> m_adapter; QUrl m_requestedUrl; friend class QQuickWebEngineView; diff --git a/src/webengine/api/qquickwebenginetestsupport_p.h b/src/webengine/api/qquickwebenginetestsupport_p.h index 30e6ee5c4..89a997b29 100644 --- a/src/webengine/api/qquickwebenginetestsupport_p.h +++ b/src/webengine/api/qquickwebenginetestsupport_p.h @@ -86,9 +86,9 @@ public: Q_INVOKABLE void create(); Q_INVOKABLE void release(); - virtual void showInputPanel(); - virtual void hideInputPanel(); - virtual bool isInputPanelVisible() const; + void showInputPanel() override; + void hideInputPanel() override; + bool isInputPanelVisible() const override; private: bool m_visible; diff --git a/src/webengine/api/qquickwebenginetouchhandleprovider_p_p.h b/src/webengine/api/qquickwebenginetouchhandleprovider_p_p.h index 277436289..5379a5729 100644 --- a/src/webengine/api/qquickwebenginetouchhandleprovider_p_p.h +++ b/src/webengine/api/qquickwebenginetouchhandleprovider_p_p.h @@ -65,7 +65,7 @@ public: ~QQuickWebEngineTouchHandleProvider(); void init(const QMap<int, QImage> &images); - virtual QImage requestImage(const QString &id, QSize *size, const QSize &requestedSize); + QImage requestImage(const QString &id, QSize *size, const QSize &requestedSize) override; private: QMap<int, QImage> m_touchHandleMap; diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp index 8d810ee33..4bf957c3b 100644 --- a/src/webengine/api/qquickwebengineview.cpp +++ b/src/webengine/api/qquickwebengineview.cpp @@ -564,6 +564,7 @@ QQuickWebEngineViewPrivate::adoptNewWindow(QSharedPointer<WebContentsAdapter> ne const QRect &, const QUrl &targetUrl) { Q_Q(QQuickWebEngineView); + Q_ASSERT(newWebContents); QQuickWebEngineNewViewRequest request; request.m_adapter = newWebContents; request.m_isUserInitiated = userGesture; @@ -588,6 +589,9 @@ QQuickWebEngineViewPrivate::adoptNewWindow(QSharedPointer<WebContentsAdapter> ne Q_EMIT q->newViewRequested(&request); + if (!request.m_isRequestHandled) + return nullptr; + return newWebContents; } |