Files
ladybird/Libraries/LibWeb/CSS/Invalidation/FormControlInvalidator.cpp
Andreas Kling 7c401b051b LibWeb: Move checked-state invalidation into a helper
HTMLInputElement had two call sites spelling out the same checked and
unchecked pseudo-class invalidation set. Move that selector policy into
FormControlInvalidator.

This keeps the input element responsible for detecting state changes,
while CSS::Invalidation owns the affected selector features.
2026-04-29 15:47:23 +02:00

26 lines
709 B
C++

/*
* Copyright (c) 2026-present, the Ladybird developers
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#include <LibWeb/CSS/Invalidation/FormControlInvalidator.h>
#include <LibWeb/CSS/InvalidationSet.h>
#include <LibWeb/CSS/Selector.h>
#include <LibWeb/DOM/Element.h>
namespace Web::CSS::Invalidation {
void invalidate_style_after_checked_state_change(DOM::Element& element, DOM::StyleInvalidationReason reason)
{
element.invalidate_style(
reason,
{
{ .type = InvalidationSet::Property::Type::PseudoClass, .value = PseudoClass::Checked },
{ .type = InvalidationSet::Property::Type::PseudoClass, .value = PseudoClass::Unchecked },
},
{});
}
}