mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-08-05 23:59:49 +00:00
LibWeb: Add opt-in tracing of invalidate_layout_tree() calls with reason
This commit is contained in:
parent
c333042e63
commit
415079bc11
Notes:
github-actions[bot]
2025-03-08 02:39:05 +00:00
Author: https://github.com/awesomekling
Commit: 415079bc11
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/3852
8 changed files with 46 additions and 12 deletions
|
@ -50,6 +50,26 @@ enum class QuirksMode {
|
|||
Yes
|
||||
};
|
||||
|
||||
#define ENUMERATE_INVALIDATE_LAYOUT_TREE_REASONS(X) \
|
||||
X(DocumentAddAnElementToTheTopLayer) \
|
||||
X(DocumentRequestAnElementToBeRemovedFromTheTopLayer) \
|
||||
X(HTMLInputElementSrcAttributeChange) \
|
||||
X(HTMLObjectElement) \
|
||||
X(KeyframeEffect) \
|
||||
X(MediaQueryChangedMatchState) \
|
||||
X(SVGGraphicsElementTransformAttributeChange) \
|
||||
X(SVGUseElement) \
|
||||
X(ShadowRootSetInnerHTML) \
|
||||
X(UpdateFileInputShadowTree)
|
||||
|
||||
enum class InvalidateLayoutTreeReason {
|
||||
#define ENUMERATE_INVALIDATE_LAYOUT_TREE_REASON(e) e,
|
||||
ENUMERATE_INVALIDATE_LAYOUT_TREE_REASONS(ENUMERATE_INVALIDATE_LAYOUT_TREE_REASON)
|
||||
#undef ENUMERATE_INVALIDATE_LAYOUT_TREE_REASON
|
||||
};
|
||||
|
||||
[[nodiscard]] StringView to_string(InvalidateLayoutTreeReason);
|
||||
|
||||
#define ENUMERATE_UPDATE_LAYOUT_REASONS(X) \
|
||||
X(CanvasRenderingContext2DSetFilter) \
|
||||
X(CursorBlinkTimer) \
|
||||
|
@ -322,7 +342,7 @@ public:
|
|||
|
||||
void set_needs_layout();
|
||||
|
||||
void invalidate_layout_tree();
|
||||
void invalidate_layout_tree(InvalidateLayoutTreeReason);
|
||||
void invalidate_stacking_context_tree();
|
||||
|
||||
virtual bool is_child_allowed(Node const&) const override;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue