pub struct PointerDownCx {Show 14 fields
pub pointer_id: PointerId,
pub position: Point,
pub position_local: Point,
pub position_window: Option<Point>,
pub tick_id: TickId,
pub pixels_per_point: f32,
pub button: MouseButton,
pub modifiers: Modifiers,
pub click_count: u8,
pub pointer_type: PointerType,
pub hit_is_text_input: bool,
pub hit_is_pressable: bool,
pub hit_pressable_target: Option<GlobalElementId>,
pub hit_pressable_target_in_descendant_subtree: bool,
}Expand description
Pointer down payload for component-owned pointer handlers.
Fields§
§pointer_id: PointerId§position: PointPointer position in the target widget’s untransformed layout space (ADR 0238).
position_local: PointPointer position in the target element’s local coordinate space (origin at (0, 0)).
This is derived as position - host.bounds().origin (ADR 0238).
position_window: Option<Point>Pointer position in window-local logical pixels (pre-mapping).
This is best-effort: events may arrive before the runtime has recorded a window snapshot.
tick_id: TickId§pixels_per_point: f32Pixels-per-point (a.k.a. window scale factor) for position.
This is required for DPI-stable interactions (e.g. viewport tools, gizmos).
modifiers: Modifiers§click_count: u8See PointerEvent::{Down,Up}.click_count for normalization rules.
pointer_type: PointerType§hit_is_text_input: booltrue when the pointer-down hit-test target is (or is inside) a text input element subtree
(TextInput, TextArea, or TextInputRegion).
This is a mechanism-provided classification intended for component policy decisions like Embla-style “do not arm drag when interacting with focus nodes”.
hit_is_pressable: booltrue when the pointer-down hit-test target is (or is inside) a pressable element subtree
(Pressable).
This is a mechanism-provided classification intended for policy-level decisions like “click-to-focus unless interacting with an embedded button”.
hit_pressable_target: Option<GlobalElementId>The deepest pressable element in the pointer-down hit-test chain (if any).
This can be used by composite widgets to implement DOM-style policies like “click-to-focus unless the event target is inside a button” without requiring selector mechanisms in the component layer.
hit_pressable_target_in_descendant_subtree: booltrue when hit_pressable_target is a strict descendant of the current action target.
This excludes ambient ancestor pressables and the current target itself, so wrapper policies can suppress forwarding only for genuinely nested interactive descendants.
Trait Implementations§
Source§impl Clone for PointerDownCx
impl Clone for PointerDownCx
Source§fn clone(&self) -> PointerDownCx
fn clone(&self) -> PointerDownCx
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more