fret_ui/layout/pass.rs
1#[derive(Debug, Clone, Copy, PartialEq, Eq)]
2pub enum LayoutPassKind {
3 /// A layout pass performed only to probe intrinsic/desired sizes or intermediate geometry.
4 ///
5 /// Probe passes must not be treated as a final layout solve. In particular, they:
6 ///
7 /// - must not consume one-shot state (e.g. deferred scroll requests),
8 /// - must not register viewport roots,
9 /// - must not update window-scoped bounds caches used by overlay placement,
10 /// - must not clear layout invalidation flags (so a subsequent `Final` pass still runs).
11 Probe,
12 /// A layout pass performed under the final viewport/root constraints for this frame.
13 Final,
14}