[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Describing an application state in ATK, without Gtk


I'm trying to find a clean way of using ATK to encode the state of an
application which doesn't rely on any toolkit -- actually a Compiz

The application does its own graphic rendering, so it's not desirable to
introduce a GTK dependency.  For the current time the application state
to provide the accessibility subsystem with is as simple as it gets:
just one text label, whose value changes under the control of the

I've played with ATK but I'm sure there's something I don't get.  The
most comprehensible examples I've found are in the atk testsuite, but
those are obviously intended as unit tests, and running them has no
influence on the state of AT-SPI.  Shall I call the atk-atspi bridge
directly?  Shall I initialize it somehow?  [1] recommends the Gail
source as an example of advanced ATK use, but the thing is still tightly
coupled with GTK.

Speaking of AT-SPI, I've also thought of avoiding the problem altogether
by just linking to libatspi; some people on the net say it's only meant
for accessibility "clients" while I clearly need a server; the API would
seem to reflect that, but others [2] say that ATK and AT-SPI are more or
less functionally equivalent, citing the Java Accessibility Framework
(which as far as I understand has been recently abandoned [3]) as an
example of skipping ATK.  It's disheartening that every "server" example
is so intertwined with huge toolkit implementations.

Making a factory for an AtkText subclass is clearly not enough.  I'd
already be happy with the simplest C program with an element showing up
in accerciser.  I have a kludge using GTK which more or less works, but
this really calls for a good solution.

Would you have any suggestion for my case?  Thanks,

[1] https://developer.gnome.org/accessibility-devel-guide/stable/dev-start-5.html.en
[2] https://accessibility.kde.org/developer/atk.php
[3] https://bugs.openjdk.java.net/browse/JDK-8067481

Luca Saiu
HYPRA -- Progressons ensemble : http://hypra.fr

Reply to: