1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
// SPDX-FileCopyrightText: Copyright (c) 2026 Mike Li/Mikewolfli/Wei Li(mikewolfli@163.com)
// SPDX-License-Identifier: MIT
//! Event system for widget interaction and communication.
//!
//! This module provides:
//! - Event types and handler trait (`types.rs`)
//! - Event queue and sender (`event_queue.rs`)
//! - Focus management (`focus.rs`)
//! - Pointer capture management (`capture.rs`)
//! - Event loop (`loop.rs`)
//! - Generic queue utilities (`queue.rs`)
//!
//! # Reachability
//!
//! **State:** Production callers: `src/lib.rs:1`; 191 files reference it (the event loop, gesture engine and every control's `EventHandler`).
/// Pointer capture: routes pointer events to the widget that claimed the
/// pointer, and releases it on explicit release or on widget destruction.
/// Drag-and-drop vocabulary: a payload, a placement, and a target that decides
/// whether to accept one.
///
/// Not a widget: it produces no `WidgetKind`. It is the shared state machine a
/// control uses when it is a drag source or a drop destination.
/// Focus ownership and traversal order.
/// A generic, runtime-typed queue used by the event and task plumbing.
// Re-export public types
pub use PointerCaptureManager;
pub use ;
pub use ;
pub use FocusManager;
pub use FocusTraversalStrategy;
pub use r#loopAnimationFrameRequest;
pub use r#loopEventLoop;
pub use IdleTask;
pub use TimerManager;
/// Named mouse-button codes, re-exported so a widget never writes a bare `2` to
/// mean "secondary button".
pub use mouse_button;
pub use ;
// Re-export queue utilities
pub use ;
pub use ;