Author: richb Date: Fri Feb 8 15:41:42 2008 New Revision: 1122 URL: http://svn.gnome.org/viewvc/tracker?rev=1122&view=rev
Log: * src/libtracker-gtk/tracker-utils.h: src/libtracker-gtk/tracker-utils.c: src/libtracker-gtk/tracker-tag-bar.c: Fix for bug #494892 - Label for/labeled by relation missing for add tag button. Modified: trunk/ChangeLog trunk/src/libtracker-gtk/tracker-tag-bar.c trunk/src/libtracker-gtk/tracker-utils.c trunk/src/libtracker-gtk/tracker-utils.h Modified: trunk/src/libtracker-gtk/tracker-tag-bar.c ============================================================================== --- trunk/src/libtracker-gtk/tracker-tag-bar.c (original) +++ trunk/src/libtracker-gtk/tracker-tag-bar.c Fri Feb 8 15:41:42 2008 @@ -27,6 +27,7 @@ #include <glib/gi18n-lib.h> #include "tracker-tag-bar.h" +#include "tracker-utils.h" #define TRACKER_TAG_BAR_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), TRACKER_TYPE_TAG_BAR, TrackerTagBarPrivate)) @@ -300,7 +301,12 @@ gtk_button_set_relief (GTK_BUTTON (button), GTK_RELIEF_NONE); gtk_button_set_focus_on_click (GTK_BUTTON (button), FALSE); gtk_box_pack_start (GTK_BOX(box), button, FALSE, FALSE, 0); - + + tracker_set_atk_relationship(button, ATK_RELATION_LABELLED_BY, + label); + tracker_set_atk_relationship(label, ATK_RELATION_LABEL_FOR, + button); + g_signal_connect (G_OBJECT (button), "button-press-event", G_CALLBACK (_on_tag_button_press_event), bar); @@ -370,7 +376,12 @@ gtk_box_pack_start (GTK_BOX(tag_bar), button, FALSE, FALSE, 0); gtk_button_set_image (GTK_BUTTON (button), image); gtk_button_set_relief (GTK_BUTTON (button), GTK_RELIEF_NONE); - + + tracker_set_atk_relationship(button, ATK_RELATION_LABELLED_BY, + label); + tracker_set_atk_relationship(label, ATK_RELATION_LABEL_FOR, + button); + g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (_on_add_tag_clicked), tag_bar); @@ -419,14 +430,3 @@ priv->client = client; return tag_bar; } - - - - - - - - - - - Modified: trunk/src/libtracker-gtk/tracker-utils.c ============================================================================== --- trunk/src/libtracker-gtk/tracker-utils.c (original) +++ trunk/src/libtracker-gtk/tracker-utils.c Fri Feb 8 15:41:42 2008 @@ -95,3 +95,20 @@ return GTK_TREE_MODEL (store); } + +void +tracker_set_atk_relationship(GtkWidget *obj1, int relation_type, + GtkWidget *obj2) +{ + AtkObject *atk_obj1, *atk_obj2, *targets[1]; + AtkRelationSet *atk_rel_set; + AtkRelation *atk_rel; + + atk_obj1 = gtk_widget_get_accessible (GTK_WIDGET (obj1)); + atk_obj2 = gtk_widget_get_accessible (GTK_WIDGET (obj2)); + atk_rel_set = atk_object_ref_relation_set (atk_obj1); + targets[0] = atk_obj2; + atk_rel = atk_relation_new (targets, 1, relation_type); + atk_relation_set_add (atk_rel_set, atk_rel); + g_object_unref (G_OBJECT (atk_rel)); +} Modified: trunk/src/libtracker-gtk/tracker-utils.h ============================================================================== --- trunk/src/libtracker-gtk/tracker-utils.h (original) +++ trunk/src/libtracker-gtk/tracker-utils.h Fri Feb 8 15:41:42 2008 @@ -32,5 +32,6 @@ GList * tracker_keyword_array_to_glist (gchar **array); GList * tracker_get_all_keywords (TrackerClient *tracker_client); GtkTreeModel * tracker_create_simple_keyword_liststore (const GList *list); - +void tracker_set_atk_relationship(GtkWidget *obj1, int relation_type, + GtkWidget *obj2); #endif /* TRACKER_UTILS_H */ _______________________________________________ SVN-commits-list mailing list (read only) http://mail.gnome.org/mailman/listinfo/svn-commits-list Want to limit the commits to a few modules? Go to above URL, log in to edit your options and select the modules ('topics') you want. Module maintainer? It is possible to set the reply-to to your development mailing list. Email [EMAIL PROTECTED] if interested.