pub enum DispatchInput {
Pointer {
x: i32,
y: i32,
event: Event,
},
PointerObject {
x: i32,
y: i32,
event: ObjectEvent,
},
Focused {
event: ObjectEvent,
},
Container {
path: Vec<usize>,
event: ObjectEvent,
},
}Expand description
The input to dispatch_object_event.
Pointer-positioned events carry coordinates used for hit-test target resolution. Key and encoder events route to the focused node.
Variants§
Pointer
A pointer stream event to be delivered to the hit-test target.
The wrapped Event must be a pointer-positioned variant
(PressDown, PressRelease, DoubleTap, LongPress, etc.). The
x/y coordinates are used for hit testing.
Fields
event: EventThe stream event to translate into an ObjectEvent.
PointerObject
An ObjectEvent to deliver to the hit-test target at (x, y).
Fields
event: ObjectEventThe object-semantic event to dispatch.
Focused
An ObjectEvent to deliver to the currently focused node.
Fields
event: ObjectEventThe object-semantic event to dispatch.
Container
An ObjectEvent targeted at the node identified by a structural path,
bypassing hit-test resolution.
The event is delivered to that node’s target handlers, then bubbles
through ancestors using the existing per-node ObjectFlags::EVENT_BUBBLE
gating — identically to how any other event bubbles. The
ObjectFlags::EVENT_BUBBLE flag is never mutated (LPAR-05 §6.3/§16).
Fields
event: ObjectEventThe object-semantic event to dispatch.
Trait Implementations§
Source§impl Clone for DispatchInput
impl Clone for DispatchInput
Source§fn clone(&self) -> DispatchInput
fn clone(&self) -> DispatchInput
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more