[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-accessibility
Subject: [Kde-accessibility]
From: Maks Orlovich <mo002j () mail ! rochester ! edu>
Date: 2003-07-04 16:18:17
[Download RAW message or body]
Hi.. I've had a bit of free time lately, so I spent a few evenings hacking on
a simple accessibility demo/app. What I have now is a basic on-screen
keyboard, which can do text entrance, and menu and toolbar capture/control.
It lacks a lot of features (most crucially input methods,but kmousetool
provides some of that), and has quite a few bugs, but it's a demo/concept of
how to get QAccessible working with very few code changes, how to use DCOP to
provide information to an outside app even in a pure Qt application, and how
to do even dispatch back into the app. (And a very evil way of using DCOP to
go around mouse grabs in popupmenus). See a screenshot at
http://mail.rochester.edu/~mo002j/klaviconc1.png, and an older one at
http://mail.rochester.edu/~mo002j/klavi5.png (the smaller number ones exist
as well, but they're of a much smaller version).
To get this running, it first of all needs a small patch to Qt. What the patch
does is provide a new plugin type, xaccess, which implements
updateAccessibility, and to provide an implementation of the global method
that dispatches it into the loaded plugins. the patch is hardly clean, since
I don't really understand QCom, and so I largely copy-pasted from the style
loader. However, this is conceptually so simple that I imagine a Troll can
prolly do this in about 5 minutes in a much cleaner way. It's also minimally
invasive, and requires nothing external. The rough patch is at http://mail.
rochester.edu/~mo002j/klavi/qt_xaccess_concept.diff
After that, I have a small change to admin/ that adds support for this plugin
type. That's probably entirely avoidable, but I don't know Makefile.am'ery
well enough to do without it. (And it just duplicates the behavior for other
plugin types). It's at http://mail.rochester.edu/~mo002j/klavi/
xaccess_plugins_admin_support.diff
Then, there is the main app. The tarball is at http://mail.rochester.edu/
~mo002j/klavi/klavi-concept.tar.bz2. To build this, after you have the
previous bits installed, just drop this into something like kdenonbeta, make
-f Makefile.cvs, configure, make, make install. To run, put in
accessProviders=klavi^e into the [General] section of ~/.qt/qtrc, then
run klavi, and new KDE apps.
Thoughts, ideas for where to take this next?
-Maksim
(This signature typed with klavi).. and I plan to send the message using
toolbar capture...
_______________________________________________
kde-accessibility mailing list
kde-accessibility@mail.kde.org
http://mail.kde.org/mailman/listinfo/kde-accessibility
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic