diff --git a/examples/webenginewidgets/browser/tabwidget.cpp b/examples/webenginewidgets/browser/tabwidget.cpp index af18b5a37bcc495f044bfc59add443e99f6b304b..efc7c438f76897d9141c727611953e905ca46658 100644 --- a/examples/webenginewidgets/browser/tabwidget.cpp +++ b/examples/webenginewidgets/browser/tabwidget.cpp @@ -310,10 +310,8 @@ void TabWidget::currentChanged(int index) disconnect(oldWebView, SIGNAL(statusBarMessage(QString)), this, SIGNAL(showStatusBarMessage(QString))); #endif -#if defined(QWEBENGINEVIEW_LINKHOVERED) - disconnect(oldWebView->page(), SIGNAL(linkHovered(QString,QString,QString)), + disconnect(oldWebView->page(), SIGNAL(linkHovered(QString)), this, SIGNAL(linkHovered(QString))); -#endif disconnect(oldWebView, SIGNAL(loadProgress(int)), this, SIGNAL(loadProgress(int))); } @@ -322,10 +320,8 @@ void TabWidget::currentChanged(int index) connect(webView, SIGNAL(statusBarMessage(QString)), this, SIGNAL(showStatusBarMessage(QString))); #endif -#if defined(QWEBENGINEVIEW_LINKHOVERED) - connect(webView->page(), SIGNAL(linkHovered(QString,QString,QString)), + connect(webView->page(), SIGNAL(linkHovered(QString)), this, SIGNAL(linkHovered(QString))); -#endif connect(webView, SIGNAL(loadProgress(int)), this, SIGNAL(loadProgress(int))); diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp index 4bd97c07ebc44bf6e298ec8062bae436510f486f..bbdcb25df0aa1f6a03fdf6241aba9cb8fa3bc753 100644 --- a/src/webenginewidgets/api/qwebenginepage.cpp +++ b/src/webenginewidgets/api/qwebenginepage.cpp @@ -205,6 +205,12 @@ void QWebEnginePagePrivate::loadProgressChanged(int progress) Q_EMIT q->loadProgress(progress); } +void QWebEnginePagePrivate::didUpdateTargetURL(const QUrl &hoveredUrl) +{ + Q_Q(QWebEnginePage); + Q_EMIT q->linkHovered(hoveredUrl.toString()); +} + void QWebEnginePagePrivate::selectionChanged() { Q_Q(QWebEnginePage); diff --git a/src/webenginewidgets/api/qwebenginepage.h b/src/webenginewidgets/api/qwebenginepage.h index be5e4c52794303e992644dc6949dd94c5290563d..eaeae9a78347d8f911a3474be45618e184b72863 100644 --- a/src/webenginewidgets/api/qwebenginepage.h +++ b/src/webenginewidgets/api/qwebenginepage.h @@ -183,6 +183,7 @@ Q_SIGNALS: void loadProgress(int progress); void loadFinished(bool ok); + void linkHovered(const QString &url); void selectionChanged(); void geometryChangeRequested(const QRect& geom); void windowCloseRequested(); diff --git a/src/webenginewidgets/api/qwebenginepage_p.h b/src/webenginewidgets/api/qwebenginepage_p.h index d94b47fd9dd8ebcb4cdf620c817449a11920265c..db0da05e9441d2f74acdea2b5853cfe80bd9767e 100644 --- a/src/webenginewidgets/api/qwebenginepage_p.h +++ b/src/webenginewidgets/api/qwebenginepage_p.h @@ -114,7 +114,7 @@ public: virtual void urlChanged(const QUrl&) Q_DECL_OVERRIDE; virtual void iconChanged(const QUrl&) Q_DECL_OVERRIDE; virtual void loadProgressChanged(int progress) Q_DECL_OVERRIDE; - virtual void didUpdateTargetURL(const QUrl&) Q_DECL_OVERRIDE { }; + virtual void didUpdateTargetURL(const QUrl&) Q_DECL_OVERRIDE; virtual void selectionChanged() Q_DECL_OVERRIDE; virtual QRectF viewportRect() const Q_DECL_OVERRIDE; virtual QPoint mapToGlobal(const QPoint &posInView) const Q_DECL_OVERRIDE;