mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-05-21 18:42:53 +00:00
The goal here is to reduce the amount of WebContent client APIs that are duplicated across every ViewImplementation. Across our three browsers, we currently: Ladybird - Mix some AK::Function callbacks and Qt signals to notify tabs of WebContent events. Browser - Use only AK::Function callbacks. headless-browser - Drop most events on the floor. Instead, let's only use AK::Function callbacks across all three browsers to propagate events to tabs. This allows us to invoke those callbacks directly from LibWebView instead of all three browsers needing to define a trivial `if (callback) callback();` override of a LibWebView virtual function. For headless-browser, we can simply not set these callbacks. As a first pass, this only converts WebContent events that are trivial to this approach. That is, events that were simply passed onto the tab or handled without much fuss. |
||
---|---|---|
.. | ||
AccessibilityTreeModel.cpp | ||
AccessibilityTreeModel.h | ||
CMakeLists.txt | ||
DOMTreeModel.cpp | ||
DOMTreeModel.h | ||
Forward.h | ||
OutOfProcessWebView.cpp | ||
OutOfProcessWebView.h | ||
RequestServerAdapter.cpp | ||
RequestServerAdapter.h | ||
StylePropertiesModel.cpp | ||
StylePropertiesModel.h | ||
ViewImplementation.cpp | ||
ViewImplementation.h | ||
WebContentClient.cpp | ||
WebContentClient.h | ||
WebSocketClientAdapter.cpp | ||
WebSocketClientAdapter.h |