summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Ladybird/WebContentView.cpp15
-rw-r--r--Ladybird/WebContentView.h1
2 files changed, 16 insertions, 0 deletions
diff --git a/Ladybird/WebContentView.cpp b/Ladybird/WebContentView.cpp
index 20f9781b8b..6e6a3ff840 100644
--- a/Ladybird/WebContentView.cpp
+++ b/Ladybird/WebContentView.cpp
@@ -314,6 +314,21 @@ void WebContentView::mouseReleaseEvent(QMouseEvent* event)
client().async_mouse_up(to_content(position), button, buttons, modifiers);
}
+void WebContentView::mouseDoubleClickEvent(QMouseEvent* event)
+{
+ Gfx::IntPoint position(event->position().x() / m_inverse_pixel_scaling_ratio, event->position().y() / m_inverse_pixel_scaling_ratio);
+ auto button = get_button_from_qt_event(*event);
+ if (button == 0) {
+ // We could not convert Qt buttons to something that Lagom can
+ // recognize - don't even bother propagating this to the web engine
+ // as it will not handle it anyway, and it will (currently) assert
+ return;
+ }
+ auto modifiers = get_modifiers_from_qt_mouse_event(*event);
+ auto buttons = get_buttons_from_qt_event(*event);
+ client().async_doubleclick(to_content(position), button, buttons, modifiers);
+}
+
void WebContentView::dragEnterEvent(QDragEnterEvent* event)
{
if (event->mimeData()->hasUrls())
diff --git a/Ladybird/WebContentView.h b/Ladybird/WebContentView.h
index a51cfed348..d318372090 100644
--- a/Ladybird/WebContentView.h
+++ b/Ladybird/WebContentView.h
@@ -79,6 +79,7 @@ public:
virtual void mouseMoveEvent(QMouseEvent*) override;
virtual void mousePressEvent(QMouseEvent*) override;
virtual void mouseReleaseEvent(QMouseEvent*) override;
+ virtual void mouseDoubleClickEvent(QMouseEvent*) override;
virtual void dragEnterEvent(QDragEnterEvent*) override;
virtual void dropEvent(QDropEvent*) override;
virtual void keyPressEvent(QKeyEvent* event) override;