Re: Empathy accessibility



Hi Nolan,

Nolan Darilek wrote:
On Wed, 2009-01-21 at 10:52 +0100, API wrote:

Yes, this cell renderers are part of GTK [1], used a lot on the GtkTreeView [2].

And yes there are a way to get the cell and expose the accessible name, in
fact, this is what happens, but seems that in this concrete case there are
a error (or that is what I understand, after read the bug comments [3].

OK. Apologies for all the newbie questions. I suppose the correct way to
do this is to learn how to code GTK/GObject in C to become comfortable
with its idioms, though I have no intentions of working in C other than
to look at accessibility issues in others' code, so that may be a r
roundabout way of accomplishing my objective. :)

So it looks as if libempathy-gtk is creating its own implementations of
various widgets. I don't think it's changing how the widgets perform,
just creating custom subclasses, and I'm wondering if this is messing
with the accessibility of what would otherwise be accessible widgets.
It depends. Accessibility implementation gets widget's information (or operate on the widgets) from the interface of the widget. If such interface still work, then the custom widget should still be accessible.
I'm not familiar with the GObject object/inheritance model. If a
subclass of TreeView is created, does it inherit the ATK information of
its parent, or do I need to explicitly set its role to that of its
parent?
Yes, it inherits the parent's implementation. If you don't have a separate accessibility implementation of the subclass, you don't need to set its role.
I'm also afraid that I don't see a way to go from a CellRenderer to an
ATK object whose name I can set. Is there a
cell_renderer_get_accessible() somewhere that I'm missing?
You can get the accessibility implementation of cell from treeview's gail_tree_view_ref_child.
 Or should I
be going at this by making the TreeView itself accessible such that,
when it uses the CellRenderer, it passes its own correct accessibility
information? Or should I somehow be assigning the CellRenderer a role?
Yes I think set role to the CellRenderer is necessary. You can set it at CellRenderer's _new function.

Regards,
Li



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