Browse Source

Merge pull request #42 from shemanaev/mouse-buttons-fix

Add Back/Forward mouse buttons handler.
Ian Walton 3 years ago
parent
commit
e15cff1aa2
1 changed files with 17 additions and 0 deletions
  1. 17 0
      src/ui/EventFilter.cpp

+ 17 - 0
src/ui/EventFilter.cpp

@@ -7,6 +7,7 @@
 #include "settings/SettingsComponent.h"
 #include "input/InputKeyboard.h"
 #include "KonvergoWindow.h"
+#include <QQuickItem>
 
 #include <QKeyEvent>
 #include <QObject>
@@ -85,6 +86,22 @@ bool EventFilter::eventFilter(QObject* watched, QEvent* event)
         }
       }
     }
+
+    if (event->type() == QEvent::MouseButtonPress)
+    {
+      QMouseEvent* mouseEvent = dynamic_cast<QMouseEvent*>(event);
+
+      if (mouseEvent) {
+        QQuickItem* webView = window->findChild<QQuickItem*>("web");
+
+        if (mouseEvent->button() == Qt::BackButton)
+          QMetaObject::invokeMethod(webView, "goBack");
+
+        if (mouseEvent->button() == Qt::ForwardButton)
+          QMetaObject::invokeMethod(webView, "goForward");
+      }
+    }
+
     return QObject::eventFilter(watched, event);
   }