mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-08-28 13:18:19 +00:00
LibWeb: Remove GeneratedPseudoElement enum
This doesn't currently provide any value over just using PseudoElement, and makes it harder to work with PseudoElement in other places.
This commit is contained in:
parent
a57595faf5
commit
dfce9974b5
Notes:
github-actions[bot]
2025-06-19 11:37:32 +00:00
Author: https://github.com/AtkinsSJ
Commit: dfce9974b5
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/5132
Reviewed-by: https://github.com/tcl3
5 changed files with 11 additions and 87 deletions
|
@ -50,10 +50,10 @@ public:
|
|||
void reset_needs_layout_update() { m_needs_layout_update = false; }
|
||||
|
||||
bool is_generated() const { return m_generated_for.has_value(); }
|
||||
bool is_generated_for_before_pseudo_element() const { return m_generated_for == CSS::GeneratedPseudoElement::Before; }
|
||||
bool is_generated_for_after_pseudo_element() const { return m_generated_for == CSS::GeneratedPseudoElement::After; }
|
||||
bool is_generated_for_backdrop_pseudo_element() const { return m_generated_for == CSS::GeneratedPseudoElement::Backdrop; }
|
||||
void set_generated_for(CSS::GeneratedPseudoElement type, DOM::Element& element)
|
||||
bool is_generated_for_before_pseudo_element() const { return m_generated_for == CSS::PseudoElement::Before; }
|
||||
bool is_generated_for_after_pseudo_element() const { return m_generated_for == CSS::PseudoElement::After; }
|
||||
bool is_generated_for_backdrop_pseudo_element() const { return m_generated_for == CSS::PseudoElement::Backdrop; }
|
||||
void set_generated_for(CSS::PseudoElement type, DOM::Element& element)
|
||||
{
|
||||
m_generated_for = type;
|
||||
m_pseudo_element_generator = &element;
|
||||
|
@ -224,7 +224,7 @@ private:
|
|||
|
||||
bool m_needs_layout_update { false };
|
||||
|
||||
Optional<CSS::GeneratedPseudoElement> m_generated_for {};
|
||||
Optional<CSS::PseudoElement> m_generated_for {};
|
||||
|
||||
u32 m_initial_quote_nesting_level { 0 };
|
||||
};
|
||||
|
|
|
@ -219,15 +219,14 @@ void TreeBuilder::create_pseudo_element_if_needed(DOM::Element& element, CSS::Ps
|
|||
pseudo_element_node->prepend_child(*list_item_marker);
|
||||
}
|
||||
|
||||
auto generated_for = CSS::to_generated_pseudo_element(pseudo_element).release_value();
|
||||
pseudo_element_node->set_generated_for(generated_for, element);
|
||||
pseudo_element_node->set_generated_for(pseudo_element, element);
|
||||
pseudo_element_node->set_initial_quote_nesting_level(initial_quote_nesting_level);
|
||||
|
||||
// FIXME: Handle images, and multiple values
|
||||
if (pseudo_element_content.type == CSS::ContentData::Type::String) {
|
||||
auto text = document.realm().create<DOM::Text>(document, pseudo_element_content.data);
|
||||
auto text_node = document.heap().allocate<Layout::TextNode>(document, *text);
|
||||
text_node->set_generated_for(generated_for, element);
|
||||
text_node->set_generated_for(pseudo_element, element);
|
||||
|
||||
push_parent(*pseudo_element_node);
|
||||
insert_node_into_inline_or_block_ancestor(*text_node, text_node->display(), AppendOrPrepend::Append);
|
||||
|
@ -583,7 +582,7 @@ void TreeBuilder::update_layout_tree(DOM::Node& dom_node, TreeBuilder::Context&
|
|||
return;
|
||||
|
||||
top_layer_element->set_pseudo_element_node({}, CSS::PseudoElement::Backdrop, pseudo_element_node);
|
||||
pseudo_element_node->set_generated_for(CSS::GeneratedPseudoElement::Backdrop, top_layer_element);
|
||||
pseudo_element_node->set_generated_for(CSS::PseudoElement::Backdrop, top_layer_element);
|
||||
insert_node_into_inline_or_block_ancestor(*pseudo_element_node, pseudo_element_display, AppendOrPrepend::Append);
|
||||
}();
|
||||
update_layout_tree(top_layer_element, context, should_create_layout_node ? MustCreateSubtree::Yes : MustCreateSubtree::No);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue