Expand description
oxiui-accessibility — AccessKit a11y tree builder for OxiUI.
Converts an A11yNode widget graph into an accesskit accesskit::TreeUpdate
that can be pushed to any AccessKit platform adapter.
The crate is intentionally headless: no windowing or platform adapter is imported here, so the full tree-building logic can be exercised in plain unit tests without a display server.
§Quick start
use accesskit::NodeId;
use oxiui_accessibility::tree::{A11yNode, A11yTree, WidgetRole};
let root = A11yNode::simple(NodeId(1), WidgetRole::Window, Some("My App".to_string()));
let update = A11yTree::build(&root);
assert_eq!(update.nodes.len(), 1);§Modules
tree—A11yNode,A11yTree,WidgetRoleprops—A11yNodeProps,CheckedState,LiveSetting,TextCaret,TextSelectionbuilder—A11yNodeBuilderfluent builderwidget_bridge— bridge betweenoxiui_core::Widgetand the a11y tree;widget_to_a11y_node,build_a11y_tree,A11yWidgetNodetext_bridge— (featuretext-bridge) bridge betweenoxiui_text::TextInput/oxiui_text::TextAreaandA11yNode.
Re-exports§
pub use action::map_action;pub use action::A11yAction;pub use action::ActionDispatcher;pub use builder::A11yNodeBuilder;pub use dirty::DirtyTracker;pub use dirty::Lazy;pub use focus::FocusIndicator;pub use focus::FocusRing;pub use nav::tab_next;pub use nav::tab_prev;pub use nav::TabOrder;pub use pool::NodePool;pub use props::byte_offset_to_char_index;pub use props::character_lengths_utf8;pub use props::A11yNodeProps;pub use props::CheckedState;pub use props::LiveSetting;pub use props::TextCaret;pub use props::TextRunChild;pub use props::TextSelection;pub use props::Toggled3;pub use tree::build_table_a11y;pub use tree::column_header_node;pub use tree::synthesize_text_run_children;pub use tree::table_cell_node;pub use tree::table_row_node;pub use tree::A11yNode;pub use tree::A11yTree;pub use tree::WidgetRole;pub use widget_bridge::build_a11y_tree;pub use widget_bridge::core_role_to_widget_role;pub use widget_bridge::widget_to_a11y_node;pub use widget_bridge::A11yWidgetNode;pub use widget_bridge::NodeIdAllocator;
Modules§
- action
- Action mapping — translates
accesskit::ActionRequestinto OxiUI-sideA11yActionvalues. - builder
- Fluent builder for
crate::tree::A11yNode. - dirty
- Lazy / dirty-flag value wrapper.
- focus
- Focus indicator visual properties for OxiUI accessibility.
- nav
- Tab-order computation for OxiUI a11y trees.
- pool
- Node pool for allocation-friendly accessibility tree construction.
- props
- Property primitives for
crate::tree::A11yNode. - text_
a11y - Text cursor and selection synthesis for accessible text inputs.
- tree
- A11y tree builder for OxiUI.
- widget_
bridge - Bridge between
oxiui_core::Widgetand the OxiUI accessibility tree.
Structs§
- A11y
Forest - A registry of
A11yTreeinstances, one per application window. - OsA11y
Prefs - Best-effort query of the operating system’s accessibility preferences.
- Window
A11y Id - A unique identifier for an accessibility tree (one per application window).