Vixen
dd8b0a81
csharp
public sealed class AccessibilityNode

One node of a captured accessibility tree: data, with no element behind it.

Read the guide page for this →

Remarks

⚠ Nothing here refers to a UiElement, and that is the point rather than tidiness. Vixen.Ui's graph is single-threaded by contract, and every platform bridge is asked questions from somewhere else — AT-SPI's D-Bus calls arrive on another thread, and AppKit asks on the main one whether or not that is the thread that owns the document. A bridge that answered by walking live elements would be reading a tree while another thread mutated it; a bridge that answers out of one of these is reading a frame that has already happened.

The properties are the ones every bridge needs and no more: the accname, the value, the computed states, the relations and the bounds. Anything a control knows that is not on this list is not reaching a screen reader today whatever the control does with it.

Fields and properties (11)

  • public int Id

    This node's identity, stable across the captures of one source, and never 0.

  • public string Tag

    The tag of the element it was taken from. Diagnostics only — no bridge should map on it.

  • public AccessibleRole Role

    What kind of thing it is. Never None: those are not nodes.

  • public string? Name

    What a screen reader calls it.

  • public string? Description

    What a screen reader adds after the name.

  • public string? Value

    What it currently holds, for the roles that hold something.

  • public AccessibleStates States

    Every state bit, computed at the moment of capture.

  • public Rectangle Bounds

    Where it is, in the document's coordinate space.

  • public int Parent

    The node this one hangs under, or 0 if it is a root of the capture.

  • public IReadOnlyList<AccessibilityNode> Children

    Its children in the accessibility tree, which is not the element tree.

  • public IReadOnlyList<AccessibilityLink> Links

    Its relations, with the far ends resolved to node ids.

Used by (4)

  • AccessibilitySnapshotVixen.Ui.Testing
  • AccessibilityTreeVixen.Ui
  • AccessibilityTreeSourceVixen.Ui
  • AccessibilityTreeTestsVixen.Ui.Tests