<feed xmlns='http://www.w3.org/2005/Atom'>
<title>vega/surfaces/dbus.c, branch master</title>
<subtitle>Surface runtime projecting Pure views across pixel, terminal, CLI, and web.
</subtitle>
<id>http://git.yeowoo.org/vega/atom?h=master</id>
<link rel='self' href='http://git.yeowoo.org/vega/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/vega/'/>
<updated>2026-09-28T12:25:21Z</updated>
<entry>
<title>Speak AT-SPI2 on the accessibility bus from the display, over Vega's own D-Bus</title>
<updated>2026-09-28T12:25:21Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-28T12:25:21Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/vega/commit/?id=6052b048467f392f4eb9fb5b268cae15e94691d5'/>
<id>urn:sha1:6052b048467f392f4eb9fb5b268cae15e94691d5</id>
<content type='text'>
vega display --access joins the accessibility bus as AT-SPI2 objects for
screen readers such as Orca, with no toolkit, ATK or libdbus: dbus.c
speaks the D-Bus wire format (EXTERNAL authentication, headers, aligned
bodies, calls, replies, signals). The tree follows what the say surface
says: a heading, a label per field, a list box per list whose items know
their place and which is selected and focused, tables, the entry, the
keys as buttons; answers come from the app when asked, one object has the
focus, and focus moves are said as events. Assistive technology can act
too: Selection focuses a row, Action presses a key. The live loop now
draws only when something changed, so a screen reader's questions no
longer cost frames. The check walks the tree with gdbus on a private
session bus with at-spi-bus-launcher, and follows the focus through keys,
Selection, Action and the events.
</content>
</entry>
</feed>
