aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/help/webenginehelpviewer.cpp
diff options
context:
space:
mode:
authorEike Ziller <[email protected]>2019-02-15 15:30:52 +0100
committerEike Ziller <[email protected]>2019-02-21 13:26:06 +0000
commit334c76fd31f98d95dff94f059da90a118c4ea6be (patch)
tree0d1fd04a7e5630644dc9d4903d61ea22769c3e51 /src/plugins/help/webenginehelpviewer.cpp
parent9e965409d1cbe6270c6a994bfe41d61a154d1d77 (diff)
Help viewer: Add option for scroll wheel zooming
Fixes: QTCREATORBUG-14154 Change-Id: Ia6c4aedb78954614477f0228ba82c4dc476a2525 Reviewed-by: Leena Miettinen <[email protected]> Reviewed-by: David Schulz <[email protected]>
Diffstat (limited to 'src/plugins/help/webenginehelpviewer.cpp')
-rw-r--r--src/plugins/help/webenginehelpviewer.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/plugins/help/webenginehelpviewer.cpp b/src/plugins/help/webenginehelpviewer.cpp
index 60773b91fef..197f356d79e 100644
--- a/src/plugins/help/webenginehelpviewer.cpp
+++ b/src/plugins/help/webenginehelpviewer.cpp
@@ -292,6 +292,31 @@ WebView::WebView(WebEngineHelpViewer *viewer)
{
}
+bool WebView::event(QEvent *ev)
+{
+ // work around QTBUG-43602
+ if (ev->type() == QEvent::ChildAdded) {
+ auto ce = static_cast<QChildEvent *>(ev);
+ ce->child()->installEventFilter(this);
+ } else if (ev->type() == QEvent::ChildRemoved) {
+ auto ce = static_cast<QChildEvent *>(ev);
+ ce->child()->removeEventFilter(this);
+ }
+ return QWebEngineView::event(ev);
+}
+
+bool WebView::eventFilter(QObject *src, QEvent *e)
+{
+ Q_UNUSED(src)
+ // work around QTBUG-43602
+ if (m_viewer->isScrollWheelZoomingEnabled() && e->type() == QEvent::Wheel) {
+ auto we = static_cast<QWheelEvent *>(e);
+ if (we->modifiers() == Qt::ControlModifier)
+ return true;
+ }
+ return false;
+}
+
void WebView::contextMenuEvent(QContextMenuEvent *event)
{
QMenu *menu = page()->createStandardContextMenu();