1#![allow(clippy::type_complexity)]
2pub mod accessibility;
6pub mod action;
7pub mod animated_quad;
8pub mod animation;
9pub mod animation_builder;
10pub mod app_event;
11pub mod arena;
12pub mod async_completion;
13pub mod binding;
14pub mod build_context;
15pub mod color_prop;
16pub mod deferred_subtree;
17pub mod dim_when_inactive;
18pub mod drag_payload;
19pub(crate) mod drag_state;
20pub mod environment;
21pub mod event;
22pub(crate) mod event_handlers;
23pub mod event_source;
24pub mod focus;
25pub mod frame_tick_scheduler;
26pub mod gesture;
27pub mod idle;
28pub mod ime;
29pub mod intent;
30pub mod menu_item_id;
31pub mod modal;
32pub mod motion_visibility;
33pub mod overlay;
34pub mod overscroll;
35pub mod paint_prop;
36pub mod presets;
37pub mod raw_handle;
38pub mod shortcut;
39pub mod signal;
40pub mod styles;
41pub mod telemetry;
42pub mod text_surface;
43pub mod widget;
44pub mod widget_builder;
45pub mod widget_builder_branching;
46pub mod widget_id;
47pub mod widget_tree;
48pub mod window;
49pub mod window_chrome;
50
51#[cfg(test)]
52pub(crate) mod test_widgets;
53
54pub use accessibility::{AccessNodeBuilder, AccessibilityInfo, Announcement};
55pub use action::{Action, ActionBuilder, ActionHandler};
56pub use animated_quad::{AnimatedQuadHandle, AnimatedQuadKind, AnimatedQuadRegistry};
57pub use animation::AnimationRequest;
58pub use animation::AnimationScheduler;
59pub use animation_builder::AnimationSpec;
60pub use app_event::{AppEvent, RepaintWindowRequest};
61pub use arena::WidgetArena;
62pub use async_completion::{AsyncCompletionHandle, AsyncCompletionPayload};
63pub use binding::{BindingLevel, BindingRegistry};
64pub use build_context::BuildContext;
65pub use color_prop::{ColorProp, TextStyleProp};
66pub use drag_payload::{
67 DragData, DragImageData, DragOrigin, DragPayload, DropOutcome, ExternalDropData,
68 OutboundDragData,
69};
70pub use drag_state::DropFeedback;
71pub use environment::{Environment, LayoutDirection};
72pub use event::{
73 ButtonMask, EventResponse, Key, Modifiers, PointerButton, ScrollDelta, WidgetEvent,
74};
75pub use event_source::{
76 AppEventPoster, EventSource, EventSourceAdapter, SubscriptionHandle, SubscriptionId,
77};
78pub use focus::{FocusOrigin, TraversalScopePolicy};
79pub use frame_tick_scheduler::{FrameTickScheduler, FrameTickSubscription};
80pub use gesture::{
81 DoubleTapRecognizer, DragRecognizer, GestureArena, GestureEvent, GestureRecognizer,
82 GestureResult, LongPressRecognizer, RawPointerEvent, SwipeDirection, SwipeRecognizer, TapEvent,
83 TapRecognizer, TripleTapRecognizer,
84};
85pub use idle::IdleDeadline;
86pub use ime::{ImeContext, ImePurpose};
87pub use intent::{Intent, IntentKind, IntentResponse};
88pub use menu_item_id::MenuItemId;
89pub use modal::{
90 ModalBuilder, ModalCloseBehavior, ModalContent, ModalPresentation, ModalRequest,
91 QueuedModalRequest,
92};
93pub use overlay::{
94 DismissBehavior, OverlayId, OverlayLayer, OverlayManager, OverlayPlacement, OverlayRequest,
95};
96pub use overscroll::{OverscrollBehavior, SCROLL_MOVE_EPSILON};
97pub use paint_prop::{GradientStopProp, PaintProp, angle_to_endpoints};
98pub use raw_handle::ParentHandle;
99pub use shortcut::{
100 CaptureHandle, EffectiveShortcut, KeyCaptureCallback, KeyStroke, KeyStrokeOverride, Shortcut,
101 ShortcutBuilder, ShortcutOnActivate, ShortcutRegistry, ShortcutScope, SlotOverride,
102};
103pub use signal::{ObserverHandle, Prop, Signal, SignalAccessError};
104pub use styles::{Theme, ThemeAppearance, ThemeExtensions, ThemeId};
105pub use widget::{
106 CursorIcon, EventContext, LayoutContext, LayoutResponse, PaintContext, PendingChild, Widget,
107 WidgetPlacement,
108};
109pub use widget_builder::{
110 AccessSubtreeMode, AccessibilityOverrides, HandlerSet, WidgetBuilder, WidgetWithHandlers,
111};
112pub use widget_builder_branching::{
113 IntoTeksiChild, IntoTeksiCondition, TeksiBranch, TeksiBranch3, TeksiBranch4,
114};
115pub use widget_id::WidgetId;
116pub use widget_tree::WidgetTree;
117pub use window::state::WindowStateInit;
118pub use window::{
119 CloseBlockedCallback, CloseGuard, CloseResponse, DecorationsMode, ModalConfig, NoopWindowOps,
120 PostRootBuilder, RootBuilder, SizeToContent, TeksiloWindowId, UserAttentionKind, WindowCommand,
121 WindowConfig, WindowIcon, WindowOps, WindowPlacement, WindowRemovedCallback,
122 WindowRemovedEvent, WindowState,
123};
124pub use window_chrome::{
125 ControlTarget, HitRegions, PlatformError, PlatformTitleBarHost, ResizeBorders, ResizeEdge,
126 TitleBarHostCallbacks, TitleBarHoverEvent, TitleBarSyntheticEvent,
127};
128
129pub use accesskit;