summaryrefslogtreecommitdiff
path: root/src/webenginewidgets/api/qwebengineview.cpp
diff options
context:
space:
mode:
authorPeter Varga <pvarga@inf.u-szeged.hu>2017-12-08 11:03:33 +0100
committerPeter Varga <pvarga@inf.u-szeged.hu>2017-12-08 21:49:20 +0000
commit9f798b787a2542688c30503d3f62fe2d7c4d5a72 (patch)
tree5b819f23814fb86b1d2373a69365cdce616444d0 /src/webenginewidgets/api/qwebengineview.cpp
parentf7103bc5fd099dd0a0772ef28930dd368e9fcf47 (diff)
downloadqtwebengine-9f798b787a2542688c30503d3f62fe2d7c4d5a72.tar.gz
Refactor QWebEngineView tooltip handling
Hide tooltip on empty text and make tooltips more fluent by ignoring duplicate requests. Task-number: QTBUG-64933 Change-Id: Ib82cb06ceda938548429cd694b849a2faadd2633 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/webenginewidgets/api/qwebengineview.cpp')
-rw-r--r--src/webenginewidgets/api/qwebengineview.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/webenginewidgets/api/qwebengineview.cpp b/src/webenginewidgets/api/qwebengineview.cpp
index 0037f7e50..c03d9fde6 100644
--- a/src/webenginewidgets/api/qwebengineview.cpp
+++ b/src/webenginewidgets/api/qwebengineview.cpp
@@ -50,8 +50,9 @@
#include <QAction>
#include <QMenu>
#include <QContextMenuEvent>
-#include <QStackedLayout>
#include <QPageLayout>
+#include <QStackedLayout>
+#include <QToolTip>
QT_BEGIN_NAMESPACE
@@ -321,6 +322,18 @@ bool QWebEngineView::event(QEvent *ev)
ev->accept();
return true;
}
+
+ // Override QWidget's default ToolTip handler since it doesn't hide tooltip on empty text.
+ if (ev->type() == QEvent::ToolTip) {
+ if (!toolTip().isEmpty())
+ QToolTip::showText(static_cast<QHelpEvent *>(ev)->globalPos(), toolTip(), this, QRect(), toolTipDuration());
+ else
+ QToolTip::hideText();
+
+ ev->accept();
+ return true;
+ }
+
return QWidget::event(ev);
}