After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 533030 - ListView contents not exposed in ATK
ListView contents not exposed in ATK
Status: RESOLVED FIXED
Product: banshee
Classification: Other
Component: User Interface
git master
Other Linux
: High normal
: 1.6
Assigned To: Banshee Maintainers
Banshee Maintainers
Depends on:
Blocks: 583933
 
 
Reported: 2008-05-13 23:49 UTC by Nolan Darilek
Modified: 2009-11-12 04:01 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Add a label to the items in the sources treeview (562 bytes, patch)
2009-03-08 12:28 UTC, Bertrand Lorentz
committed Details | Review
[a11y] Basic ListView accessibility. (38.89 KB, patch)
2009-10-03 00:39 UTC, Eitan Isaacson
none Details | Review
[a11y] Added basic accessibility to ColumnCellText (3.52 KB, patch)
2009-10-03 00:39 UTC, Eitan Isaacson
none Details | Review
[a11y] Added ColumnHeaderCellText accessibility (8.59 KB, patch)
2009-10-03 00:39 UTC, Eitan Isaacson
none Details | Review
[a11y] Added ColumnCellAlbum accessibility. (1.90 KB, patch)
2009-10-03 00:39 UTC, Eitan Isaacson
none Details | Review
[a11y] Added ColumnCellStatusIndicator accessibility. (5.39 KB, patch)
2009-10-03 00:39 UTC, Eitan Isaacson
none Details | Review
[a11y] Added test script. (5.78 KB, patch)
2009-10-03 00:39 UTC, Eitan Isaacson
none Details | Review
[a11y] Basic ListView accessibility. (38.87 KB, patch)
2009-10-05 16:32 UTC, Eitan Isaacson
none Details | Review

Description Nolan Darilek 2008-05-13 23:49:06 UTC
I am a blind user of speech provided by Orca. The trunk version of Banshee as of today seems somewhat inaccessible. Here are a couple items I've noticed:

1. Most items on the main screen are unlabeled. The repeat toggle button works, but there is an unidentified tree view which speaks no items when arrowing through, plus several unnamed buttons and panels.

2. The extension manager is full of lots of unknown items, and there doesn't appear to be an intuitive means of navigating via the keyboard.

I'm happy to provide additional information and usability suggestions. Looks like an interesting player project and I hope that I can help make it accessible.
Comment 1 Gabriel Burt 2008-05-16 05:17:38 UTC
Hi Nolan,

Thanks for your report and offer of assistance.  Just to confirm, you are running from svn trunk?  That will make the process easier, since you can test changes without waiting for a release.

The TreeView is thelist of sources (library, playlists, etc), good to know we're not doing all we need to be on it.  Aaron and I will be following up more on all this later.  Thanks!
Comment 2 Nolan Darilek 2008-11-09 18:32:25 UTC
I notice the target for this bug was set to 1.2. Does this mean it is being addressed in the 1.2 series, or that it should have been completed by 1.2? Just curious, as per the latest version shipped with Ubuntu (1.2.1?) all these issues are still present.

I'm still willing and eager to help test this, as I'd really like to be running Banshee on my boxes and laptops. :)
Comment 3 Nolan Darilek 2009-01-20 15:21:29 UTC
Any progress on this?

Recently I found this and I wonder if it might help? When I last inquired, it seemed like folks didn't understand how the GNOME accessibility infrastructure works, and I think this might help with that:

http://library.gnome.org/devel/accessibility-devel-guide/nightly/
Comment 4 Gabriel Burt 2009-01-20 19:33:23 UTC
This is on my radar/todo list for 1.6.  Thanks for the docs link.
Comment 5 Bertrand Lorentz 2009-03-08 12:28:01 UTC
Created attachment 130274 [details] [review]
Add a label to the items in the sources treeview

This one line patch adds the source name as a text label to each item in the sources TreeView ("Music Library", "Podcasts", etc.).
Seems easy, but it took me a while to figure it out.

What seems also easy would be to add labels on the buttons in the toolbar : Previous, Play and Next. But I haven't been able to figure it out yet.
Comment 6 Nolan Darilek 2009-03-08 16:07:00 UTC
Cool, I can confirm that this patch works. With it applied, I was able to subscribe to and start playing a podcast. Here are new observations:

The list of source members is not accessible. So, for instance, once I've downloaded podcasts, I can't find a list of what I've got. I did eventually locate it one shift-tab from the reppeat button, but it doesn't provide accessible feedback. The code is very confusing to navigate. Where is this widget defined? I may be able to take a look at this, but I'm not really all  that familiar with GTK, so understanding the accessibility stuff is a level abstracted from that.

The "similar artists" feature seems to be accessible. At least, I'm read artist and percentage buttons when tabbing. Not sure what happens when I click on these, and if that will be accessible.

Thanks for the start on this. I'll keep poking at the code to see if I can do anything about the buttons. It'll be great to be able to use Banshee. :)
Comment 7 Bertrand Lorentz 2009-03-08 17:11:33 UTC
Thanks for the quick feedback, I committed my patch.

The content of the sources is handled by a custom widget called ListView. Its code is in src/Libraries/Hyena.Gui/Hyena.Data.Gui/ListView.
It is rather complex, that's why I started with the other stuff.

Clicking on one of the buttons in "similar artists" just opens the web page of the artist on the Last.fm website.
Comment 8 Gabriel Burt 2009-05-12 17:23:52 UTC
I think making our custom widgets accessible blocks on https://bugzilla.novell.com/show_bug.cgi?id=476836
Comment 9 Gabriel Burt 2009-05-13 15:45:18 UTC
That bug in Gtk# is fixed in trunk, so we _could_ start working on the a11y of our custom widgets now, if we got our dev environments setup right (and if we #ifdef'd around the code that requires > Gtk# 2.10).

Here are our custom widgets:
* ListView - relatively complicated, need to implement Atk.Table
* Extensions list - we might just change this to a normal Gtk.TreeView
* TrackInfoDisplay - simple, just make sure name/description set
* DAP Size Info pane - simple, could just set name/description
* Rating - simple, just need to implement Atk.Value

We also need to check the tab order and keyboard-activation of widgets to make sure they're sane.
Comment 10 Gabriel Burt 2009-06-11 23:09:51 UTC
I started implementing Atk.Table for our custom ListView widget and ran into another Atk# bug, filed here: https://bugzilla.novell.com/show_bug.cgi?id=512477

I already have the Rating widget a11y 90% done (needs to not be hard coded 0 - 5).

My a11y work is here:  http://gitorious.org/banshee/mainline/commits/a11y

in particular:
http://gitorious.org/banshee/mainline/commit/2ef7bb5a4afcfe8b6f8944bfc628c76bd42cd39f
and
http://gitorious.org/banshee/mainline/commit/ae19542ad25dd00ec2bdcae54148509e0484d6e9
Comment 11 Eitan Isaacson 2009-09-15 17:18:24 UTC
I am continuing with Burt's work, my changes could be found here:
http://gitorious.org/~eeejay/banshee/eeejays-clone/commits/a11y
Comment 12 Eitan Isaacson 2009-09-25 19:36:41 UTC
Moved to github. gitorious just confuses me too much, sorry!

http://github.com/eeejay/banshee-a11y
Comment 13 Eitan Isaacson 2009-10-03 00:39:24 UTC
Created attachment 144641 [details] [review]
[a11y] Basic ListView accessibility.
Comment 14 Eitan Isaacson 2009-10-03 00:39:29 UTC
Created attachment 144642 [details] [review]
[a11y] Added basic accessibility to ColumnCellText
Comment 15 Eitan Isaacson 2009-10-03 00:39:35 UTC
Created attachment 144643 [details] [review]
[a11y] Added ColumnHeaderCellText accessibility
Comment 16 Eitan Isaacson 2009-10-03 00:39:39 UTC
Created attachment 144644 [details] [review]
[a11y] Added ColumnCellAlbum accessibility.
Comment 17 Eitan Isaacson 2009-10-03 00:39:44 UTC
Created attachment 144645 [details] [review]
[a11y] Added ColumnCellStatusIndicator accessibility.
Comment 18 Eitan Isaacson 2009-10-03 00:39:49 UTC
Created attachment 144646 [details] [review]
[a11y] Added test script.
Comment 19 Eitan Isaacson 2009-10-05 16:32:52 UTC
Created attachment 144810 [details] [review]
[a11y] Basic ListView accessibility.

Use ListView.ActiveColumn[Changed] instead of Selection.FocusedColumnIndex.
Comment 20 Gabriel Burt 2009-10-06 00:36:06 UTC
I've merged your entire a11y branch into an a11y branch hosted on GNOME git - http://git.gnome.org/cgit/banshee/log/?h=a11y

I've added a bunch of style and other fixes on top of them.  Let's collaboratively work on that branch until this is ready for master.  If you have a GNOME account, feel free to push directly to that branch Eitan, otherwise just ping me when you have some commits I should pull in.
Comment 21 Gabriel Burt 2009-10-06 00:39:40 UTC
Things that need to be done:

1) Add copyright headers to all new files
2) Add yourself as an Author on all files non-trivially modified
3) We need some build and/or run-time magic to
   a) not break the build for users who aren't running gtk# from the 2-12 branch
   b) not crash for users not running gtk# from the 2-12 branch + the AtkTable patch
Comment 22 Eitan Isaacson 2009-10-06 16:33:45 UTC
I don't know how much more time I will be able to put into this, but I will do my best to do items one and two.