Expand description
Style recalculation change tracking.
This module provides StyleRecalcChange, a graduated system for tracking
what kind of style recalculation is needed. Inspired by Chromium’s approach,
this enables optimizations like:
- Skipping style recalc entirely for unchanged views
- Using fast “inherited only” paths when only inherited props changed
- Limiting recalc to immediate children vs entire subtrees
§Comparison with ChangeFlags
The existing [ChangeFlags] are binary: a view either needs style recalc or doesn’t.
StyleRecalcChange adds why the recalc is needed, enabling optimization decisions.
Structs§
- Inherited
Changes - Tracks which inherited properties actually changed.
- Inherited
Groups - Groups of inherited properties that can change together.
- Recalc
Flags - Additional flags that modify how style recalculation proceeds.
- Style
Recalc Change - Tracks what kind of style recalculation is needed.
Enums§
- Propagate
- Describes how style changes should propagate to children.