diff options
author | Brian Cameron <brian.cameron@sun.com> | 2007-03-27 05:55:14 +0000 |
---|---|---|
committer | Brian Cameron <bcameron@src.gnome.org> | 2007-03-27 05:55:14 +0000 |
commit | a2a41282af915235a62b9f1b73bb03de2cd5b3c2 (patch) | |
tree | 6e3812c688fc8e16730e6a1c388d475bd554e939 | |
parent | 5774342f5668471b909ea6b92ee401cee3cfe865 (diff) | |
download | gdm-a2a41282af915235a62b9f1b73bb03de2cd5b3c2.tar.gz |
Partially fix #412576 by adding ATK label for the entry field. Patch
2006-03-27 Brian Cameron <brian.cameron@sun.com>
* gui/greeter/greeter_item_pam.c: Partially fix #412576 by adding
ATK label for the entry field. Patch provided by David Zeuthen
<david@fubar.dk>.
svn path=/trunk/; revision=4721
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | gui/greeter/greeter_item_pam.c | 25 |
2 files changed, 31 insertions, 0 deletions
@@ -1,5 +1,11 @@ 2006-03-27 Brian Cameron <brian.cameron@sun.com> + * gui/greeter/greeter_item_pam.c: Partially fix #412576 by adding + ATK label for the entry field. Patch provided by David Zeuthen + <david@fubar.dk>. + +2006-03-27 Brian Cameron <brian.cameron@sun.com> + * gui/gdmsetup.glade, daemon/gdm.c: Fix some messages. Partially fixes bug #423158. diff --git a/gui/greeter/greeter_item_pam.c b/gui/greeter/greeter_item_pam.c index f0e7d80d..12ae10e1 100644 --- a/gui/greeter/greeter_item_pam.c +++ b/gui/greeter/greeter_item_pam.c @@ -260,6 +260,31 @@ greeter_item_pam_prompt (const char *message, if (conversation_info) { set_text (conversation_info, message); + + /* + * Add Accessibility text for entry field. + * Might be nice to set ATK_RELATION_LABEL_FOR, LABELLED_BY between + * the label (pam-prompt) and the entry, but gdmgreeter doesn't use real + * GTK widgets for text fields. For now, just set the entry field's + * name. + */ + if (entry_info != NULL) + { + GnomeCanvasWidget *item = GNOME_CANVAS_WIDGET (entry_info->item); + if (item != NULL) + { + GtkWidget *widget = item->widget; + if (widget != NULL) + { + AtkObject *atk_widget; + atk_widget = gtk_widget_get_accessible (widget); + if (atk_widget != NULL) + { + atk_object_set_name (atk_widget, message); + } + } + } + } } if (entry_info && entry_info->item && |