events
Event payloads and cancellation wrappers passed to Pax event handlers.
Structs
ButtonClick
User activates a native button by click or tap.
CheckboxChange
User checks or unchecks a checkbox.
Properties
checked
Type: bool
The new checked state.
Click
User activates an element with a mouse click or single-touch tap.
@click and @tap handlers both receive Event<Click>. A touch tap is
emitted after touch end and normalized with button set to
MouseButton::Left and no modifiers.
Properties
mouse
Type: MouseEventArgs
Common mouse event data.
ContextMenu
User right-clicks an element to open the context menu.
Properties
mouse
Type: MouseEventArgs
Common mouse event data.
DoubleClick
User double-clicks a mouse button over an element.
Properties
mouse
Type: MouseEventArgs
Common mouse event data.
Drop
User drops a file-like payload over an element.
Properties
x
Type: f64
The x-coordinate of the drop in the receiving node's local coordinate space.
y
Type: f64
The y-coordinate of the drop in the receiving node's local coordinate space.
name
Type: String
File or payload name supplied by the platform.
mime_type
Type: String
MIME type supplied by the platform.
data
Type: Vec<u8>
Raw dropped payload bytes.
Event
Event wrapper passed to Pax event handlers.
Event<T> carries the typed event payload and shared cancellation state,
allowing handlers to call prevent_default where the active chassis supports it.
Properties
args
Type: T
The event-specific payload, for example Click or KeyDown.
Implementations
new
pub fn new(args: T) -> Self
Constructs an event wrapper around a raw payload.
prevent_default
pub fn prevent_default(&self)
Cancels the platform default for this event, when the chassis supports cancellation.
Focus
Window or component focused.
KeyDown
User is pressing a key.
Properties
keyboard
Type: KeyboardEventArgs
Common keyboard event data.
KeyPress
User presses a key that displays a character (alphanumeric or symbol).
Properties
keyboard
Type: KeyboardEventArgs
Common keyboard event data.
KeyUp
User has released a key.
Properties
keyboard
Type: KeyboardEventArgs
Common keyboard event data.
KeyboardEventArgs
Common properties in keyboard events.
Properties
key
Type: String
Platform-normalized key string.
modifiers
Type: Vec<ModifierKey>
Modifier keys active during the event.
is_repeat
Type: bool
Whether this event was generated by key-repeat.
MouseDown
User presses a mouse button over an element.
Properties
mouse
Type: MouseEventArgs
Common mouse event data.
MouseEventArgs
Common properties in mouse-backed events and normalized activation events.
Properties
x
Type: f64
The window-space x-coordinate of the event.
Use NodeContext::local_point to convert it into coordinates relative to a handler's node.
y
Type: f64
The window-space y-coordinate of the event.
Use NodeContext::local_point to convert it into coordinates relative to a handler's node.
button
Type: MouseButton
Mouse button associated with the event.
modifiers
Type: Vec<ModifierKey>
Modifier keys active during the event.
MouseMove
User moves the mouse while it is over an element.
Properties
mouse
Type: MouseEventArgs
Common mouse event data.
MouseOut
User moves the mouse away from an element.
MouseOver
User moves the mouse onto an element.
MouseUp
User releases a mouse button over an element.
Properties
mouse
Type: MouseEventArgs
Common mouse event data.
PhotoPickerChange
Native photo picker completion event.
Properties
id
Type: u32
Picker node id that produced the result.
request_id
Type: u64
App-controlled request id, usually copied from the picker trigger value.
status
Type: PhotoPickerStatus
Completion status.
message
Type: Option<String>
Human-readable platform message for errors or partial results.
photos
Type: Vec<PhotoPickerPhoto>
Selected photos, empty for cancellation, permission denial, or unavailable sources.
PhotoPickerPhoto
One selected image returned by a native photo picker.
Properties
temp_id
Type: String
Stable temporary identifier for this selection.
file_name
Type: Option<String>
File name supplied by the platform, when available.
mime_type
Type: String
MIME type supplied or inferred by the platform.
byte_size
Type: u64
Byte size of the selected asset.
width
Type: Option<u32>
Image width in pixels, when available.
height
Type: Option<u32>
Image height in pixels, when available.
source_kind
Type: PhotoPickerSourceKind
Source used for this image.
handle
Type: Option<String>
Platform preview/read handle, such as an object URL or file URL.
data
Type: Option<Vec<u8>>
Copied asset bytes when the chassis can provide them within configured limits.
Scroll
Scroll is the shared delta-based path for wheel scrolling, touch swipe gestures, and
read-only native scroller position changes.
Use Wheel or TouchMove when you need platform-specific details instead of the normalized
delta stream.
Properties
delta_x
Type: f64
Horizontal scroll delta.
delta_y
Type: f64
Vertical scroll delta.
SelectStart
A native text selection is beginning.
SliderChange
User changes a slider's value.
Properties
value
Type: f64
The new slider value.
TextInput
User types into a text input field.
Properties
text
Type: String
Text committed by the input event.
TextboxChange
User changes the text in a text input field.
Properties
text
Type: String
Current text after the change.
TextboxInput
Text input reported while the user edits a textbox.
On web, this follows the DOM input event. TextboxChange follows the
DOM change event instead; commit timing depends on the platform control.
Properties
text
Type: String
Current text reported by the input event.
Touch
Represents a single touch event.
Properties
x
Type: f64
The window-space x-coordinate of this touch point.
Use NodeContext::local_point to convert it into coordinates relative to a handler's node.
y
Type: f64
The window-space y-coordinate of this touch point.
Use NodeContext::local_point to convert it into coordinates relative to a handler's node.
identifier
Type: i64
Stable identifier for this touch across a touch sequence.
delta_x
Type: f64
Horizontal delta since the previous touch update.
delta_y
Type: f64
Vertical delta since the previous touch update.
TouchCancel
A TouchCancel occurs when the platform aborts an active touch sequence before normal release, such as during a system interruption or host-level gesture cancellation.
The contained touches represent the cancelled touch points and the event targets, then
releases, the node captured at touch start. Cancelled touches must not produce activation.
A native Scroller that can observe its pan simultaneously with child touches keeps delivering
move events and finishes the child sequence with TouchEnd; winning scroll arbitration alone
does not cancel the touch.
Properties
touches
Type: Vec<Touch>
Touch points whose active sequence was cancelled.
TouchEnd
A TouchEnd occurs when the user stops touching an element.
The contained touches represent a list of touch points and the event targets, then releases,
the node captured at touch start.
Properties
touches
Type: Vec<Touch>
Touch points that ended.
TouchMove
A TouchMove occurs when the user moves while touching an element.
The contained touches represent a list of touch points and the event targets the node captured
at touch start, even when the point has moved outside its bounds.
Properties
touches
Type: Vec<Touch>
Active touch points after this touch movement.
TouchStart
A TouchStart occurs when the user touches an element.
The contained touches represent a list of touch points. The hit node is captured for the
touch identifier so subsequent move and end events keep routing to the same subtree.
Properties
touches
Type: Vec<Touch>
Active touch points at the start of this touch sequence.
ViewportProximityChange
A settled geometry change during a continuous proximity visit.
First admission/re-entry has no previous sample. Departure sends one final change outside proximity before exit. Unchanged frames emit nothing.
Properties
previous
Type: Option<ViewportProximitySnapshot>
Last delivered sample in this visit; None on admission/re-entry.
current
Type: ViewportProximitySnapshot
Current frozen geometry, including the terminal outside sample.
ViewportProximityEnter
Entry into global viewport proximity, including initially nearby targets. Delivered before the initial change event. This local event does not bubble.
Properties
current
Type: ViewportProximitySnapshot
Frozen sample shared with the initial change notification.
ViewportProximityExit
Departure from global viewport proximity, after the terminal change event. Unmount cancels observation without synthesizing a geometric exit.
Properties
previous
Type: ViewportProximitySnapshot
Last sample inside proximity.
current
Type: ViewportProximitySnapshot
Terminal outside sample shared with the final change notification.
ViewportProximitySnapshot
One settled viewport-proximity sample in logical window coordinates.
Bounds are transformed layout AABBs, not padded paint coverage. Rectangular clips are intersected; curved/rotated clips use their bounding envelopes. Opacity, alpha coverage, sibling occlusion and external windows are ignored.
Properties
in_proximity
Type: bool
Whether the target intersects the proximity region with positive area.
bounds
Type: Rect
Presented layout bounds relative to the global visual viewport's origin.
viewport_intersection
Type: Option<Rect>
Positive-area intersection with the global viewport and ancestor clips.
Implementations
intersection_ratio
pub fn intersection_ratio(&self) -> f64
Fraction of the layout AABB inside the effective viewport, from zero to one.
is_in_viewport
pub fn is_in_viewport(&self) -> bool
Whether any positive-area viewport intersection exists.
Wheel
User scrolls the mouse wheel over an element.
Properties
x
Type: f64
The x-coordinate of the wheel event in the receiving node's local coordinate space.
y
Type: f64
The y-coordinate of the wheel event in the receiving node's local coordinate space.
delta_x
Type: f64
Horizontal wheel delta.
delta_y
Type: f64
Vertical wheel delta.
modifiers
Type: Vec<ModifierKey>
Modifier keys active during the event.
Enums
ModifierKey
The variants of modifier keys available on keyboard-supporting platforms.
Variants
Shift
Shift key.
Control
Control key.
Alt
Alt or Option key.
Command
Command, Meta, or Windows key.
MouseButton
The variants of mouse buttons available on mouse-supporting platforms.
Variants
Left
Primary mouse button.
Right
Secondary mouse button.
Middle
Middle mouse button.
Unknown
Button not identified by the chassis.
PhotoPickerSourceKind
Platform source used to produce a selected photo.
Variants
Library
Existing image from a photo library.
File
Existing image from the filesystem.
Camera
Newly captured camera image.
Other(String)
Source not recognized by this runtime version.
PhotoPickerStatus
Completion status for a native photo picker request.
Variants
Selected
One or more photos were selected.
Cancelled
The platform picker was dismissed without a selection.
PermissionDenied
Camera or picker permission was denied or restricted.
Unavailable
The requested source is not available on this platform/device.
SizeLimitExceeded
One or more candidate photos exceeded the configured byte limit.
Failed
The platform picker failed for another reason.