1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 04:37:34 +00:00

LibWeb: Move DOM classes into the Web::DOM namespace

LibWeb keeps growing and the Web namespace is filling up fast.
Let's put DOM stuff into Web::DOM, just like we already started doing
with SVG stuff in Web::SVG.
This commit is contained in:
Andreas Kling 2020-07-26 19:37:56 +02:00
parent 96d13f75cf
commit 11ff9d0f17
178 changed files with 516 additions and 523 deletions

View file

@ -78,14 +78,14 @@ bool EventHandler::handle_mouseup(const Gfx::IntPoint& position, unsigned button
auto result = layout_root()->hit_test(position);
if (result.layout_node && result.layout_node->node()) {
RefPtr<Node> node = result.layout_node->node();
RefPtr<DOM::Node> node = result.layout_node->node();
if (is<HTMLIFrameElement>(*node)) {
if (auto* subframe = downcast<HTMLIFrameElement>(*node).hosted_frame())
return subframe->event_handler().handle_mouseup(position.translated(compute_mouse_event_offset({}, *result.layout_node)), button, modifiers);
return false;
}
auto offset = compute_mouse_event_offset(position, *result.layout_node);
node->dispatch_event(MouseEvent::create("mouseup", offset.x(), offset.y()));
node->dispatch_event(DOM::MouseEvent::create("mouseup", offset.x(), offset.y()));
handled_event = true;
}
@ -107,7 +107,7 @@ bool EventHandler::handle_mousedown(const Gfx::IntPoint& position, unsigned butt
if (!result.layout_node)
return false;
RefPtr<Node> node = result.layout_node->node();
RefPtr<DOM::Node> node = result.layout_node->node();
document->set_hovered_node(node);
if (!node)
return false;
@ -119,7 +119,7 @@ bool EventHandler::handle_mousedown(const Gfx::IntPoint& position, unsigned butt
}
auto offset = compute_mouse_event_offset(position, *result.layout_node);
node->dispatch_event(MouseEvent::create("mousedown", offset.x(), offset.y()));
node->dispatch_event(DOM::MouseEvent::create("mousedown", offset.x(), offset.y()));
if (!layout_root())
return true;
@ -173,7 +173,7 @@ bool EventHandler::handle_mousemove(const Gfx::IntPoint& position, unsigned butt
auto result = layout_root()->hit_test(position);
const HTMLAnchorElement* hovered_link_element = nullptr;
if (result.layout_node) {
RefPtr<Node> node = result.layout_node->node();
RefPtr<DOM::Node> node = result.layout_node->node();
if (node && is<HTMLIFrameElement>(*node)) {
if (auto* subframe = downcast<HTMLIFrameElement>(*node).hosted_frame())
@ -192,7 +192,7 @@ bool EventHandler::handle_mousemove(const Gfx::IntPoint& position, unsigned butt
is_hovering_link = true;
}
auto offset = compute_mouse_event_offset(position, *result.layout_node);
node->dispatch_event(MouseEvent::create("mousemove", offset.x(), offset.y()));
node->dispatch_event(DOM::MouseEvent::create("mousemove", offset.x(), offset.y()));
if (!layout_root())
return true;
}

View file

@ -33,7 +33,7 @@
namespace Web {
Frame::Frame(Element& host_element, Frame& main_frame)
Frame::Frame(DOM::Element& host_element, Frame& main_frame)
: m_page(main_frame.page())
, m_main_frame(main_frame)
, m_loader(*this)
@ -54,7 +54,7 @@ Frame::~Frame()
{
}
void Frame::set_document(Document* document)
void Frame::set_document(DOM::Document* document)
{
if (m_document == document)
return;

View file

@ -41,16 +41,16 @@ namespace Web {
class Frame : public TreeNode<Frame> {
public:
static NonnullRefPtr<Frame> create_subframe(Element& host_element, Frame& main_frame) { return adopt(*new Frame(host_element, main_frame)); }
static NonnullRefPtr<Frame> create_subframe(DOM::Element& host_element, Frame& main_frame) { return adopt(*new Frame(host_element, main_frame)); }
static NonnullRefPtr<Frame> create(Page& page) { return adopt(*new Frame(page)); }
~Frame();
bool is_main_frame() const { return this == &m_main_frame; }
const Document* document() const { return m_document; }
Document* document() { return m_document; }
const DOM::Document* document() const { return m_document; }
DOM::Document* document() { return m_document; }
void set_document(Document*);
void set_document(DOM::Document*);
Page& page() { return m_page; }
const Page& page() const { return m_page; }
@ -77,15 +77,15 @@ public:
Frame& main_frame() { return m_main_frame; }
const Frame& main_frame() const { return m_main_frame; }
Element* host_element() { return m_host_element; }
const Element* host_element() const { return m_host_element; }
DOM::Element* host_element() { return m_host_element; }
const DOM::Element* host_element() const { return m_host_element; }
Gfx::IntPoint to_main_frame_position(const Gfx::IntPoint&);
Gfx::IntRect to_main_frame_rect(const Gfx::IntRect&);
private:
explicit Frame(Element& host_element, Frame& main_frame);
explicit Frame(DOM::Element& host_element, Frame& main_frame);
explicit Frame(Page&);
Page& m_page;
@ -94,8 +94,8 @@ private:
FrameLoader m_loader;
EventHandler m_event_handler;
WeakPtr<Element> m_host_element;
RefPtr<Document> m_document;
WeakPtr<DOM::Element> m_host_element;
RefPtr<DOM::Document> m_document;
Gfx::IntSize m_size;
Gfx::IntRect m_viewport_rect;
};