fret_ui/tree/debug/
layers.rs1use super::super::*;
2
3#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
9pub enum PointerOcclusion {
10 #[default]
12 None,
13 BlockMouse,
15 BlockMouseExceptScroll,
18}
19
20#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
21pub struct UiInputArbitrationSnapshot {
22 pub modal_barrier_root: Option<NodeId>,
23 pub focus_barrier_root: Option<NodeId>,
24 pub pointer_occlusion: PointerOcclusion,
25 pub pointer_occlusion_layer: Option<UiLayerId>,
26 pub pointer_capture_active: bool,
27 pub pointer_capture_layer: Option<UiLayerId>,
32 pub pointer_capture_multiple_layers: bool,
33}
34
35#[derive(Debug, Clone)]
36pub struct UiDebugLayerInfo {
37 pub id: UiLayerId,
38 pub root: NodeId,
39 pub visible: bool,
40 pub blocks_underlay_input: bool,
41 pub hit_testable: bool,
42 pub pointer_occlusion: PointerOcclusion,
43 pub wants_pointer_down_outside_events: bool,
44 pub consume_pointer_down_outside_events: bool,
45 pub pointer_down_outside_branches: Vec<NodeId>,
46 pub wants_pointer_move_events: bool,
47 pub wants_timer_events: bool,
48}
49
50#[derive(Debug, Clone)]
51pub struct UiDebugHitTest {
52 pub hit: Option<NodeId>,
53 pub active_layer_roots: Vec<NodeId>,
54 pub barrier_root: Option<NodeId>,
55}