Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::view::atspi Namespace Reference

Classes

struct  StateSet
 Two-word AT-SPI state bitfield (the au GetState returns: [low, high]). More...

Functions

constexpr uint32_t role_to_atspi_role (View::AccessRole role)
 Map a Pulp AccessRole to the best-fit AtspiRole number.
constexpr const char * role_to_atspi_role_name (View::AccessRole role)
 The AT-SPI role NAME for a Pulp AccessRole, returned by org.a11y.atspi.Accessible.GetRoleName (s).
constexpr void set_state (StateSet &s, uint32_t index)
 Set the bit for AtspiStateType index (0..63) in a two-word StateSet.
constexpr bool has_state (const StateSet &s, uint32_t index)
 True if AtspiStateType index is set in s.
constexpr StateSet default_states ()
 The default state for an enabled, visible, showing accessible object — the baseline every Pulp accessible (including the application root) reports.
constexpr StateSet with_toggle_state (StateSet s, AccessToggleState state, bool from_checked)
 Fold a View's check/press state into an AT-SPI state set.
constexpr StateSet with_editable (StateSet s, bool editable)
 EDITABLE — an editable text interface.

Variables

constexpr uint32_t kRoleCheckBox = 7
constexpr uint32_t kRoleComboBox = 11
constexpr uint32_t kRoleDialog = 16
constexpr uint32_t kRoleImage = 27
constexpr uint32_t kRoleLabel = 29
constexpr uint32_t kRoleList = 31
constexpr uint32_t kRoleListItem = 32
constexpr uint32_t kRoleMenu = 33
constexpr uint32_t kRoleMenuItem = 35
constexpr uint32_t kRolePageTab = 37
constexpr uint32_t kRolePageTabList = 38
constexpr uint32_t kRolePanel = 39
constexpr uint32_t kRoleProgressBar = 42
constexpr uint32_t kRolePushButton = 43
constexpr uint32_t kRoleRadioButton = 44
constexpr uint32_t kRoleScrollBar = 48
constexpr uint32_t kRoleSlider = 51
constexpr uint32_t kRoleTable = 55
constexpr uint32_t kRoleTableCell = 56
constexpr uint32_t kRoleToggleButton = 62
constexpr uint32_t kRoleApplication = 75
constexpr uint32_t kRoleEntry = 79
constexpr uint32_t kRoleHeading = 83
constexpr uint32_t kRoleLink = 88
constexpr uint32_t kRoleTableRow = 90
constexpr uint32_t kRoleInvalid = 0
constexpr uint32_t kStateChecked = 4
constexpr uint32_t kStateEditable = 7
constexpr uint32_t kStateEnabled = 8
constexpr uint32_t kStateFocusable = 11
constexpr uint32_t kStateFocused = 12
constexpr uint32_t kStatePressed = 20
constexpr uint32_t kStateSensitive = 24
constexpr uint32_t kStateShowing = 25
constexpr uint32_t kStateVisible = 30
constexpr uint32_t kStateIndeterminate = 32
constexpr uint32_t kStateCheckable = 41

Function Documentation

◆ default_states()

StateSet pulp::view::atspi::default_states ( )
constexpr

The default state for an enabled, visible, showing accessible object — the baseline every Pulp accessible (including the application root) reports.

◆ has_state()

bool pulp::view::atspi::has_state ( const StateSet & s,
uint32_t index )
constexpr

True if AtspiStateType index is set in s.

◆ role_to_atspi_role()

uint32_t pulp::view::atspi::role_to_atspi_role ( View::AccessRole role)
constexpr

Map a Pulp AccessRole to the best-fit AtspiRole number.

Unknown / none → PANEL (a generic container — AT-SPI has no "custom" escape hatch the way UIA does, and PANEL is the conventional neutral grouping role).

◆ role_to_atspi_role_name()

const char * pulp::view::atspi::role_to_atspi_role_name ( View::AccessRole role)
constexpr

The AT-SPI role NAME for a Pulp AccessRole, returned by org.a11y.atspi.Accessible.GetRoleName (s).

These are the canonical lowercase-with-spaces role strings from the AT-SPI2 IDL (the same names atspi_role_get_name() produces) so a screen reader that reads the name rather than the numeric role still gets the conventional label. Kept in lockstep with role_to_atspi_role() and locked by the offline table test.

◆ set_state()

void pulp::view::atspi::set_state ( StateSet & s,
uint32_t index )
constexpr

Set the bit for AtspiStateType index (0..63) in a two-word StateSet.

◆ with_editable()

StateSet pulp::view::atspi::with_editable ( StateSet s,
bool editable )
constexpr

EDITABLE — an editable text interface.

Orca uses it to decide whether to enter text-entry mode.

◆ with_toggle_state()

StateSet pulp::view::atspi::with_toggle_state ( StateSet s,
AccessToggleState state,
bool from_checked )
constexpr

Fold a View's check/press state into an AT-SPI state set.

AT-SPI has no "value" for a checkbox — the STATE bits are how Orca announces "checked" / "not checked" / "partially checked", so a checkbox that only carries a role reads as a plain toggle-button with nothing to say.

aria-checked → CHECKABLE + CHECKED; aria-pressed → PRESSED; "mixed" → the INDETERMINATE bit with CHECKED/PRESSED left clear (ATK/AT-SPI's tri-state).

from_checked distinguishes the two ARIA slots (checked vs pressed); pass what accessibility_toggle_state() resolved. Pure so the offline test asserts the exact bits the Linux TU (never compiled on the macOS gate) will emit.

Variable Documentation

◆ kRoleApplication

uint32_t pulp::view::atspi::kRoleApplication = 75
inlineconstexpr

◆ kRoleCheckBox

uint32_t pulp::view::atspi::kRoleCheckBox = 7
inlineconstexpr

◆ kRoleComboBox

uint32_t pulp::view::atspi::kRoleComboBox = 11
inlineconstexpr

◆ kRoleDialog

uint32_t pulp::view::atspi::kRoleDialog = 16
inlineconstexpr

◆ kRoleEntry

uint32_t pulp::view::atspi::kRoleEntry = 79
inlineconstexpr

◆ kRoleHeading

uint32_t pulp::view::atspi::kRoleHeading = 83
inlineconstexpr

◆ kRoleImage

uint32_t pulp::view::atspi::kRoleImage = 27
inlineconstexpr

◆ kRoleInvalid

uint32_t pulp::view::atspi::kRoleInvalid = 0
inlineconstexpr

◆ kRoleLabel

uint32_t pulp::view::atspi::kRoleLabel = 29
inlineconstexpr

◆ kRoleLink

uint32_t pulp::view::atspi::kRoleLink = 88
inlineconstexpr

◆ kRoleList

uint32_t pulp::view::atspi::kRoleList = 31
inlineconstexpr

◆ kRoleListItem

uint32_t pulp::view::atspi::kRoleListItem = 32
inlineconstexpr

◆ kRoleMenu

uint32_t pulp::view::atspi::kRoleMenu = 33
inlineconstexpr

◆ kRoleMenuItem

uint32_t pulp::view::atspi::kRoleMenuItem = 35
inlineconstexpr

◆ kRolePageTab

uint32_t pulp::view::atspi::kRolePageTab = 37
inlineconstexpr

◆ kRolePageTabList

uint32_t pulp::view::atspi::kRolePageTabList = 38
inlineconstexpr

◆ kRolePanel

uint32_t pulp::view::atspi::kRolePanel = 39
inlineconstexpr

◆ kRoleProgressBar

uint32_t pulp::view::atspi::kRoleProgressBar = 42
inlineconstexpr

◆ kRolePushButton

uint32_t pulp::view::atspi::kRolePushButton = 43
inlineconstexpr

◆ kRoleRadioButton

uint32_t pulp::view::atspi::kRoleRadioButton = 44
inlineconstexpr

◆ kRoleScrollBar

uint32_t pulp::view::atspi::kRoleScrollBar = 48
inlineconstexpr

◆ kRoleSlider

uint32_t pulp::view::atspi::kRoleSlider = 51
inlineconstexpr

◆ kRoleTable

uint32_t pulp::view::atspi::kRoleTable = 55
inlineconstexpr

◆ kRoleTableCell

uint32_t pulp::view::atspi::kRoleTableCell = 56
inlineconstexpr

◆ kRoleTableRow

uint32_t pulp::view::atspi::kRoleTableRow = 90
inlineconstexpr

◆ kRoleToggleButton

uint32_t pulp::view::atspi::kRoleToggleButton = 62
inlineconstexpr

◆ kStateCheckable

uint32_t pulp::view::atspi::kStateCheckable = 41
inlineconstexpr

◆ kStateChecked

uint32_t pulp::view::atspi::kStateChecked = 4
inlineconstexpr

◆ kStateEditable

uint32_t pulp::view::atspi::kStateEditable = 7
inlineconstexpr

◆ kStateEnabled

uint32_t pulp::view::atspi::kStateEnabled = 8
inlineconstexpr

◆ kStateFocusable

uint32_t pulp::view::atspi::kStateFocusable = 11
inlineconstexpr

◆ kStateFocused

uint32_t pulp::view::atspi::kStateFocused = 12
inlineconstexpr

◆ kStateIndeterminate

uint32_t pulp::view::atspi::kStateIndeterminate = 32
inlineconstexpr

◆ kStatePressed

uint32_t pulp::view::atspi::kStatePressed = 20
inlineconstexpr

◆ kStateSensitive

uint32_t pulp::view::atspi::kStateSensitive = 24
inlineconstexpr

◆ kStateShowing

uint32_t pulp::view::atspi::kStateShowing = 25
inlineconstexpr

◆ kStateVisible

uint32_t pulp::view::atspi::kStateVisible = 30
inlineconstexpr