LibWeb: Update button/input activation behaviour to match spec

This commit is contained in:
Gingeh 2025-02-27 10:53:48 +11:00 committed by Tim Ledbetter
parent ddb832afdf
commit 591c6b0f68
Notes: github-actions[bot] 2025-02-27 12:43:59 +00:00
6 changed files with 436 additions and 3 deletions

View file

@ -2696,7 +2696,11 @@ void HTMLInputElement::activation_behavior(DOM::Event const& event)
// 2. Run this element's input activation behavior, if any, and do nothing otherwise.
run_input_activation_behavior(event).release_value_but_fixme_should_propagate_errors();
// 3. Run the popover target attribute activation behavior given element and event's target.
// 3. If element has a form owner and element's type attribute is not in the Button state, then return.
if (form() != nullptr && type_state() != TypeAttributeState::Button)
return;
// 4. Run the popover target attribute activation behavior given element and event's target.
if (event.target() && event.target()->is_dom_node())
PopoverInvokerElement::popover_target_activation_behaviour(*this, as<DOM::Node>(*event.target()));
}