Track retained layout validity explicitly

This commit is contained in:
iris-ai committed 2026-09-15 16:03:53 -04:00
1 parent 691e3eb23c
commit 29c7881c8a
25 files changed
+836 -795

No files matched your search

+4 -16
View File
@@ -26,7 +26,6 @@ use std::{
#[derive(Clone, Copy)]
pub(crate) enum Counter {
Updates,
ResizeDependents,
DrawRequests,
WidgetDraws,
PlaceCalls,
@@ -40,13 +39,9 @@ pub(crate) enum Counter {
ReuseDirty,
ReuseWrongParent,
ReuseUnslotted,
ReuseOwnResize,
ReuseDescendantResize,
ResizeChecks,
ResizeCheckChildren,
ReuseOutside,
QueuePops,
DepthReads,
EagerReaderRedraws,
LocalRedraws,
SizeChanges,
ReaderEdges,
@@ -63,7 +58,6 @@ impl Counter {
const NAMES: [&'static str; Self::COUNT] = [
"updates",
"resize dependents",
"draw requests",
"widget draws",
"place calls",
@@ -77,13 +71,9 @@ impl Counter {
"reuse: dirty",
"reuse: wrong parent",
"reuse: unslotted",
"reuse: own resize",
"reuse: descendant resize",
"resize checks",
"resize children checked",
"reuse: outside what it holds for",
"redraw queue pops",
"depth reads",
"eager reader redraws",
"local redraws",
"size changes",
"reader edges",
@@ -100,7 +90,6 @@ impl Counter {
pub(crate) enum TimerKind {
Update,
FullLayout,
ResizeMarking,
IncrementalLayout,
TextRender,
TextShape,
@@ -114,7 +103,6 @@ impl TimerKind {
const NAMES: [&'static str; Self::COUNT] = [
"update total",
"full layout",
"resize marking",
"incremental layout",
"text render",
"text shape",
@@ -255,8 +243,8 @@ pub enum ReuseOutcome {
Dirty,
WrongParent,
Unslotted,
OwnResize,
DescendantResize,
Outside,
Undrawn,
}
/// One targeted layout event. Events are retained in execution order, making