GNOME Bugzilla – Bug 794513
Setting accessible-role does not work
Last modified: 2018-03-22 14:27:00 UTC
Created attachment 369897 [details] proposed fix Hello, Some dialog boxes use labels for static information, e.g. printer status, replace result, etc. For the screen reader to properly understand that, it should have role ATK_ROLE_STATIC. There is <child internal-child="accessible"> <object class="AtkObject"> <property name="AtkObject::accessible-role">static</property> </object> </child> But it currently doesn't work: “"accessible-role" is supposed to be an int, not a string” Matthias Clasen said on the list that this is because it should actually be an enum, not an int. The attached patch does this, and it does fix the issue indeed. Samuel
Created attachment 369898 [details] testcase And here is a testcase, which can be run with glade-previewer --filename test.glade and tested in accerciser that the role of the label becomes "static".
Comment on attachment 369897 [details] proposed fix The patch looks good. Feel free to commit it on master. BTW, I was not able to review it using the bugzilla review tool, as it appears to have a wrong format. I think that it is as easy as uploading them as "name.patch" instead of just "patch".
(just to be sure: I don't have commit access, so somebody else has to do it)
Created attachment 369915 [details] [review] Fix as a git patch > (just to be sure: I don't have commit access, so somebody else has to do it) I'm uploading the patch again to be sure that I'm using the correct name and email address. If you are ok with it, I will push this patch. Thanks.
Yes it is fine, thanks!
(In reply to Samuel Thibault from comment #5) > Yes it is fine, thanks! Just committed. Thanks for the patch.
This "ABI break" doesnt change atk_object_real_get_property accordingly case PROP_ROLE: - g_value_set_int (value, atk_object_get_role (accessible)); + g_value_set_enum (value, atk_object_get_role (accessible)); break;
Ah, that's needed indeed.
Just fixed with this commit: https://git.gnome.org/browse/atk/commit/?id=30399c42a524af14a48a227ccd5f588ac54b51eb Closing again.