Skip to main content

SemanticsUpdate

Struct SemanticsUpdate 

Source
pub struct SemanticsUpdate {
    pub nodes: Vec<(NodeId, Node)>,
    pub root: NodeId,
    pub focus: Option<NodeId>,
}
Expand description

A collected accessibility tree produced by RenderRoot::semantics.

nodes is the flat (NodeId, Node) map every accesskit platform adapter consumes; root is the id of the enclosing window node (always present, even for an empty tree); focus is the node a focused widget claimed via SemanticsCtx::set_focused, or None when nothing in the tree is focused (a platform adapter defaults the platform focus to root in that case).

Fields§

§nodes: Vec<(NodeId, Node)>

The flat node map, root first, then each contributed node in the order it was collected (pre-order, mirroring paint).

§root: NodeId

The id of the root (window) node.

§focus: Option<NodeId>

The focused node, if any widget claimed focus this pass.

Implementations§

Source§

impl SemanticsUpdate

Source

pub fn focus_id(&self) -> NodeId

The node a platform adapter should report as focused — the focused widget’s node, or root when nothing in the tree is focused.

accesskit’s TreeUpdate::focus is a non-optional NodeId: an adapter must always name some focus target, and the window root is the conventional fallback. This is the value a shell feeds straight into the adapter, versus reading focus when it needs to distinguish “root, because focused” from “root, because nothing is focused”.

Trait Implementations§

Source§

impl Clone for SemanticsUpdate

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for SemanticsUpdate

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for SemanticsUpdate

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for SemanticsUpdate

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> StorageAccess<T> for T

Source§

fn as_borrowed(&self) -> &T

Borrows the value.
Source§

fn into_taken(self) -> T

Takes the value.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.