Proposal: DBus activation of Accessibility
Frederik Gladhorn
gladhorn at kde.org
Mon May 16 22:29:39 BST 2011
Hi,
sorry for cross-posting. I would just like to have this looked at by everyone
so we can simply implement it.
During the ATK/AT-SPI hackfest it came up a few times that we have no solution
to enable accessibility (eg Screen Readers) on the fly. The conclusion was that
using DBus would fit everyones needs and make it easy for third partys to
adapt.
Proposal: DBus activation of Accessibility
Problem description: We need a cross-desktop solution to dynamically activate
the accessibility framework.
Ideally we could switch on accessibility functionallity by default. At the
moment it seems that most solutions use quite a few resources, therefor the
best short-term solution would be to find a way to enable accessibility on the
fly.
As an example this is helpful when on first time use or when the computer is
shared with users that have no accessibility needs. Currently Gnome requires
the user to log out and back in. KDE has no solution.
Proposed solution: To activate accessibility, a dbus notification is sent to
inform about the state of the accessibility framework. The enabled status of
the accessibility framework can be queried via the same mechanism. A setter is
also provided to activate the accessibility framework desktop wide.
The DBus interface contains a property that says whether accessibility is
enabled, has a notification signal and a method to enable accessibility.
Currently the at-spi2 dbus registry would be the best place for this
functionallity.
DBus service: org.a11y.Bus
Proposed DBus interface:
<?xml version="1.0" encoding="UTF-8"?>
<node name="/node">
<interface name="org.a11y.status">
<property name="IsEnabled" type="b" access="read"/>
<method name="Enable">
<arg direction="in" name="enabled" type="b"/>
</method>
<signal name="NotifyEnabled">
<arg name="enabled" type="b"/>
</signal>
</interface>
</node>
Gnome could couple this with the existing gconf notification. For KDE the
system settings module will have to be extended.
Greetings,
Frederik
More information about the kde-core-devel
mailing list