Преглед на файлове

LibWeb: Dispatch `dblclick` UI Events on double click

Karol Kosek преди 3 години
родител
ревизия
237a5bedd2
променени са 2 файла, в които са добавени 3 реда и са изтрити 1 реда
  1. 2 1
      Userland/Libraries/LibWeb/Page/EventHandler.cpp
  2. 1 0
      Userland/Libraries/LibWeb/UIEvents/EventNames.h

+ 2 - 1
Userland/Libraries/LibWeb/Page/EventHandler.cpp

@@ -542,7 +542,8 @@ bool EventHandler::handle_doubleclick(Gfx::IntPoint const& position, unsigned bu
     if (!node || !layout_node)
     if (!node || !layout_node)
         return false;
         return false;
 
 
-    // FIXME: Dispatch 'dblclick' events.
+    auto offset = compute_mouse_event_offset(position, *layout_node);
+    node->dispatch_event(UIEvents::MouseEvent::create_from_platform_event(UIEvents::EventNames::dblclick, offset.x(), offset.y(), position.x(), position.y(), button));
 
 
     // FIXME: Select word
     // FIXME: Select word
 
 

+ 1 - 0
Userland/Libraries/LibWeb/UIEvents/EventNames.h

@@ -15,6 +15,7 @@ namespace Web::UIEvents::EventNames {
 
 
 #define ENUMERATE_UI_EVENTS          \
 #define ENUMERATE_UI_EVENTS          \
     __ENUMERATE_UI_EVENT(click)      \
     __ENUMERATE_UI_EVENT(click)      \
+    __ENUMERATE_UI_EVENT(dblclick)   \
     __ENUMERATE_UI_EVENT(keydown)    \
     __ENUMERATE_UI_EVENT(keydown)    \
     __ENUMERATE_UI_EVENT(keyup)      \
     __ENUMERATE_UI_EVENT(keyup)      \
     __ENUMERATE_UI_EVENT(mousedown)  \
     __ENUMERATE_UI_EVENT(mousedown)  \