Skip to main content

Crate oxiui_accessibility

Crate oxiui_accessibility 

Source
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

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::ActionRequest into OxiUI-side A11yAction values.
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::Widget and the OxiUI accessibility tree.

Structs§

A11yForest
A registry of A11yTree instances, one per application window.
OsA11yPrefs
Best-effort query of the operating system’s accessibility preferences.
WindowA11yId
A unique identifier for an accessibility tree (one per application window).