Skip to main content

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}