Expand description
Cotis-facing accessibility API backed by AccessKit.
This crate defines the contract between Cotis elements and platform accessibility
adapters. Applications or renderers implement AccessKitProvider to register
nodes per ElementId, receive ActionRequests, and push
TreeUpdates to the platform via a callback.
This is a trait-only extension point: no platform adapter ships in this
workspace. Consumers also depend on accesskit directly for
Role, Action, and related types.
§Suggested frame order
- Run layout so element bounds are current.
- Call
AccessKitProvider::new_accessibility_nodefor each accessible element. - Poll
AccessKitProvider::get_action_requestsand handle user actions. - The platform adapter invokes the routine installed by
AccessKitProvider::set_tree_update_routinewith tree updates.
§Examples
ⓘ
use cotis_accessibility::{AccessibilityConfig, AccessKitProvider};
use accesskit::Role;
use cotis::utils::ElementId;
// Implement AccessKitProvider on your renderer or app shell, then per frame:
// provider.new_accessibility_node(id, config);
// for request in provider.get_action_requests(id) { ... }
// Tree updates flow through set_tree_update_routine callback.Structs§
- Accessibility
Config - Metadata for registering a Cotis element as an AccessKit node.
Traits§
- Access
KitProvider - Bridge trait implemented by renderers or app shells for AccessKit integration.