mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-03 13:02:09 +02:00
Node.cpp still contained selector-specific policy for sibling and same-parent-move structural invalidation. Move that logic into CSS::Invalidation::StructuralMutationInvalidator so DOM mutation code can delegate structural selector dependency handling. This is a behavior-preserving extraction. It keeps the existing previous-sibling walk guard, sibling-distance checks, shadow-root marking, and ancestor child-needs-style propagation.
24 lines
495 B
C++
24 lines
495 B
C++
/*
|
|
* Copyright (c) 2026-present, the Ladybird developers
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <LibWeb/DOM/StyleInvalidationReason.h>
|
|
|
|
namespace Web::DOM {
|
|
|
|
class Node;
|
|
|
|
}
|
|
|
|
namespace Web::CSS::Invalidation {
|
|
|
|
void invalidate_style_after_same_parent_move(DOM::Node&, DOM::StyleInvalidationReason);
|
|
void invalidate_structurally_affected_siblings(DOM::Node&, DOM::StyleInvalidationReason);
|
|
void mark_ancestors_as_having_child_needing_style_update(DOM::Node&);
|
|
|
|
}
|