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 72249 - GAIL should create LABELLED_BY relation for mnemonic widget
GAIL should create LABELLED_BY relation for mnemonic widget
Status: RESOLVED FIXED
Product: atk
Classification: Platform
Component: gail
unspecified
Other Solaris
: Normal normal
: ---
Assigned To: padraig.obriain
padraig.obriain
: 111859 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2002-02-22 13:58 UTC by padraig.obriain
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Proposed patch (2.67 KB, patch)
2003-01-22 14:09 UTC, padraig.obriain
none Details | Review
Proposed patch to create LABELLED_BY relation (3.50 KB, patch)
2003-05-01 15:30 UTC, padraig.obriain
none Details | Review
gdb output for nautilus with last patch applied (10.06 KB, text/plain)
2003-05-09 12:22 UTC, remus draica
  Details
Updated patch (3.66 KB, patch)
2003-05-09 15:56 UTC, padraig.obriain
none Details | Review

Description padraig.obriain 2002-02-22 13:58:47 UTC
GAIL creates a ATK_RELATION_LABEL_FOR relation for a label which has a
mnemonic widget. It should also create a ATK_RELATION_LABELLED_BY relation
for the mnemonic widget
Comment 1 padraig.obriain 2002-02-26 10:43:27 UTC
The problem with creating the LABELLED_BY relation when the LABEL_FOR
relation is created is that atk_object_ref_relation_set may already
have been called for the AtkObject for the mnemonic widget and the
relation set will not contain the LABELLED_BY relation.

It is not possible for GAIL to determine when a mnemonic widget is set
for a label by  using emission hooks as the nbotify signal does not
permit emission hook
Comment 2 Havoc Pennington 2002-03-11 04:49:48 UTC
We should add a GTK function:
 GList* gtk_widget_get_mnemonic_labels(GtkWidget *w);

Should be possible to implement sanely on the GTK level. This 
would then allow us to avoid keeping labelled-by properties
updated manually.
Comment 3 padraig.obriain 2002-10-01 09:41:57 UTC
Owen,

Would you accept a patch to implement Havoc's suggestion?

Comment 4 bill.haneman 2003-01-21 12:03:44 UTC
This is potentially a serious bug since it prevents heuristics that
search for "LABELLED_BY" relations.

We need to address this issue soon, so we can fix it in 2.3 or even
GNOME 2.2.1.
Comment 5 padraig.obriain 2003-01-22 14:09:53 UTC
Created attachment 13745 [details] [review]
Proposed patch
Comment 6 padraig.obriain 2003-01-22 14:10:44 UTC
The proposed patch assumes that a patch for bug 103456, or similar, is
applied.
Comment 7 Calum Benson 2003-04-03 15:06:14 UTC
Updating status_whiteboard field to reflect A11Y team's assessment 
of accessibility impact.
Comment 8 padraig.obriain 2003-05-01 09:20:12 UTC
*** Bug 111859 has been marked as a duplicate of this bug. ***
Comment 9 padraig.obriain 2003-05-01 14:29:55 UTC
I think that I can something about this in GAIL even if we do not get
the fix for bug #103456.

Given a widget, get its parent. If the previous child of the parent is
a label and its mnemonic widget is the current widget create the
LABELLED_BY relation.

Will this cover most of the cases we are interested in?
Comment 10 padraig.obriain 2003-05-01 15:30:52 UTC
Created attachment 16172 [details] [review]
Proposed patch to create LABELLED_BY relation
Comment 11 remus draica 2003-05-09 12:22:17 UTC
Created attachment 16391 [details]
gdb output for nautilus with last patch applied
Comment 12 remus draica 2003-05-09 12:23:08 UTC
With last patch (id=16172) I get a segmentation fault when I try to
start nautilus. 

Atached the gdb results.
Comment 13 padraig.obriain 2003-05-09 15:56:21 UTC
Created attachment 16395 [details] [review]
Updated patch
Comment 14 padraig.obriain 2003-05-09 15:57:00 UTC
Sorry about the bad patch. Can you try the updated one.
Comment 15 remus draica 2003-05-12 09:41:33 UTC
The new patch works fine.
Comment 16 padraig.obriain 2003-05-12 10:07:51 UTC
I have committed the last patch to CVS HEAD. I will rework it when bug
#103456 is fixed.