[gtk+] Convert GailButton to GtkButtonAccessible



commit 8432ea3574bc71a8a32d8613b84b54bbd84d0057
Author: Matthias Clasen <mclasen redhat com>
Date:   Fri Jul 1 21:25:53 2011 -0400

    Convert GailButton to GtkButtonAccessible
    
    This drops the AtkText implementation, and also strips handling
    of children out. Instead of listening for enter/leave/press/released,
    just listen for state changes on the widget.

 gtk/a11y/Makefile.am                 |    4 +-
 gtk/a11y/gail.c                      |    3 -
 gtk/a11y/gailbutton.c                | 1397 ----------------------------------
 gtk/a11y/gailbutton.h                |   61 --
 gtk/a11y/gtkbuttonaccessible.c       |  466 +++++++++++
 gtk/a11y/gtkbuttonaccessible.h       |   52 ++
 gtk/a11y/gtklinkbuttonaccessible.c   |    2 +-
 gtk/a11y/gtklinkbuttonaccessible.h   |    6 +-
 gtk/a11y/gtkscalebuttonaccessible.c  |    2 +-
 gtk/a11y/gtkscalebuttonaccessible.h  |    6 +-
 gtk/a11y/gtktogglebuttonaccessible.c |    2 +-
 gtk/a11y/gtktogglebuttonaccessible.h |    6 +-
 gtk/gtkbutton.c                      |    3 +
 tests/a11y/about.txt                 |   99 +---
 tests/a11y/accessible-name.txt       |   31 -
 tests/a11y/appchooser.txt            |  179 +----
 tests/a11y/assistant.txt             |  260 +------
 tests/a11y/buttons.txt               |  124 ---
 tests/a11y/colorchooser.txt          |  107 +---
 tests/a11y/hello-world.txt           |   31 -
 tests/a11y/link.txt                  |   31 -
 tests/a11y/lockbutton.txt            |   85 +--
 tests/a11y/notebook.txt              |   62 --
 tests/a11y/pickers.txt               |  163 +----
 tests/a11y/tree.txt                  |  132 +----
 25 files changed, 594 insertions(+), 2720 deletions(-)
---
diff --git a/gtk/a11y/Makefile.am b/gtk/a11y/Makefile.am
index 922c077..bd3e3da 100644
--- a/gtk/a11y/Makefile.am
+++ b/gtk/a11y/Makefile.am
@@ -7,7 +7,7 @@ gail_c_sources =			\
 	gtkarrowaccessible.c		\
 	gailbooleancell.c		\
 	gtkboxaccessible.c		\
-	gailbutton.c			\
+	gtkbuttonaccessible.c		\
 	gailcell.c			\
 	gailcellparent.c		\
 	gtkcheckmenuitemaccessible.c	\
@@ -58,7 +58,7 @@ gail_private_h_sources =		\
 	gtkarrowaccessible.h		\
 	gailbooleancell.h		\
 	gtkboxaccessible.h		\
-	gailbutton.h			\
+	gtkbuttonaccessible.h		\
 	gailcell.h			\
 	gailcellparent.h		\
 	gtkcheckmenuitemaccessible.h	\
diff --git a/gtk/a11y/gail.c b/gtk/a11y/gail.c
index cb8cfc4..60d9088 100644
--- a/gtk/a11y/gail.c
+++ b/gtk/a11y/gail.c
@@ -24,7 +24,6 @@
 
 #include <gtk/gtkx.h>
 #include "gailbooleancell.h"
-#include "gailbutton.h"
 #include "gailcell.h"
 #include "gailcontainer.h"
 #include "gailcontainercell.h"
@@ -84,7 +83,6 @@ static GQuark quark_focus_object = 0;
 
 GAIL_IMPLEMENT_FACTORY (GAIL_TYPE_WIDGET, GailWidget, gail_widget, GTK_TYPE_WIDGET)
 GAIL_IMPLEMENT_FACTORY (GAIL_TYPE_CONTAINER, GailContainer, gail_container, GTK_TYPE_CONTAINER)
-GAIL_IMPLEMENT_FACTORY (GAIL_TYPE_BUTTON, GailButton, gail_button, GTK_TYPE_BUTTON)
 GAIL_IMPLEMENT_FACTORY (GAIL_TYPE_MENU_SHELL, GailMenuShell, gail_menu_shell, GTK_TYPE_MENU_SHELL)
 GAIL_IMPLEMENT_FACTORY (GAIL_TYPE_MENU, GailMenu, gail_menu, GTK_TYPE_MENU)
 GAIL_IMPLEMENT_FACTORY (GAIL_TYPE_WINDOW, GailWindow, gail_window, GTK_TYPE_BIN)
@@ -834,7 +832,6 @@ gail_accessibility_module_init (void)
 
   GAIL_WIDGET_SET_FACTORY (GTK_TYPE_WIDGET, gail_widget);
   GAIL_WIDGET_SET_FACTORY (GTK_TYPE_CONTAINER, gail_container);
-  GAIL_WIDGET_SET_FACTORY (GTK_TYPE_BUTTON, gail_button);
   GAIL_WIDGET_SET_FACTORY (GTK_TYPE_MENU_BAR, gail_menu_shell);
   GAIL_WIDGET_SET_FACTORY (GTK_TYPE_MENU, gail_menu);
   GAIL_WIDGET_SET_FACTORY (GTK_TYPE_WINDOW, gail_window);
diff --git a/gtk/a11y/gtkbuttonaccessible.c b/gtk/a11y/gtkbuttonaccessible.c
new file mode 100644
index 0000000..64b6d25
--- /dev/null
+++ b/gtk/a11y/gtkbuttonaccessible.c
@@ -0,0 +1,466 @@
+/* GAIL - The GNOME Accessibility Implementation Library
+ * Copyright 2001, 2002, 2003 Sun Microsystems Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include "config.h"
+
+#include <string.h>
+#include <gtk/gtk.h>
+#include "gtkbuttonaccessible.h"
+#include <libgail-util/gailmisc.h>
+
+
+static void atk_action_interface_init (AtkActionIface *iface);
+static void atk_image_interface_init  (AtkImageIface  *iface);
+
+G_DEFINE_TYPE_WITH_CODE (GtkButtonAccessible, gtk_button_accessible, GAIL_TYPE_CONTAINER,
+                         G_IMPLEMENT_INTERFACE (ATK_TYPE_ACTION, atk_action_interface_init)
+                         G_IMPLEMENT_INTERFACE (ATK_TYPE_IMAGE, atk_image_interface_init))
+
+static void
+state_changed_cb (GtkWidget *widget, GtkStateFlags previous_flags)
+{
+  AtkObject *accessible;
+  GtkStateFlags flags;
+  gboolean was_active;
+  gboolean active;
+
+  flags = gtk_widget_get_state_flags (widget);
+
+  was_active = (previous_flags & GTK_STATE_FLAG_ACTIVE) != 0;
+  active = (flags & GTK_STATE_FLAG_ACTIVE) != 0;
+
+  accessible = gtk_widget_get_accessible (widget);
+  if (active && !was_active)
+    atk_object_notify_state_change (accessible, ATK_STATE_ARMED, TRUE);
+  else if (!active && was_active)
+    atk_object_notify_state_change (accessible, ATK_STATE_ARMED, FALSE);
+}
+
+static void
+gtk_button_accessible_initialize (AtkObject *obj,
+                                  gpointer   data)
+{
+  GtkWidget *parent;
+
+  ATK_OBJECT_CLASS (gtk_button_accessible_parent_class)->initialize (obj, data);
+
+  g_signal_connect (data, "state-flags-changed", G_CALLBACK (state_changed_cb), NULL);
+
+  parent = gtk_widget_get_parent (gtk_accessible_get_widget (GTK_ACCESSIBLE (obj)));
+  if (GTK_IS_TREE_VIEW (parent))
+    {
+      /* Even though the accessible parent of the column header will
+       * be reported as the table because the parent widget of the
+       * GtkTreeViewColumn's button is the GtkTreeView we set
+       * the accessible parent for column header to be the table
+       * to ensure that atk_object_get_index_in_parent() returns
+       * the correct value; see gail_widget_get_index_in_parent().
+       */
+      atk_object_set_parent (obj, gtk_widget_get_accessible (parent));
+      obj->role = ATK_ROLE_TABLE_COLUMN_HEADER;
+    }
+  else
+    obj->role = ATK_ROLE_PUSH_BUTTON;
+}
+
+static GtkWidget *
+get_image_from_button (GtkWidget *button)
+{
+  GtkWidget *image;
+
+  image = gtk_button_get_image (GTK_BUTTON (button));
+  if (GTK_IS_IMAGE (image))
+    return image;
+
+  return NULL;
+}
+
+static GtkWidget *
+find_label_child (GtkContainer *container)
+{
+  GList *children, *tmp_list;
+  GtkWidget *child;
+
+  children = gtk_container_get_children (container);
+
+  child = NULL;
+  for (tmp_list = children; tmp_list != NULL; tmp_list = tmp_list->next)
+    {
+      if (GTK_IS_LABEL (tmp_list->data))
+        {
+          child = GTK_WIDGET (tmp_list->data);
+          break;
+        }
+      else if (GTK_IS_CONTAINER (tmp_list->data))
+        {
+          child = find_label_child (GTK_CONTAINER (tmp_list->data));
+          if (child)
+            break;
+        }
+    }
+  g_list_free (children);
+  return child;
+}
+
+static GtkWidget *
+get_label_from_button (GtkWidget *button)
+{
+  GtkWidget *child;
+
+  child = gtk_bin_get_child (GTK_BIN (button));
+  if (GTK_IS_ALIGNMENT (child))
+    child = gtk_bin_get_child (GTK_BIN (child));
+
+  if (GTK_IS_CONTAINER (child))
+    child = find_label_child (GTK_CONTAINER (child));
+  else if (!GTK_IS_LABEL (child))
+    child = NULL;
+
+  return child;
+}
+
+static const gchar *
+gtk_button_accessible_get_name (AtkObject *obj)
+{
+  const gchar *name = NULL;
+  GtkWidget *widget;
+  GtkWidget *child;
+
+  widget = gtk_accessible_get_widget (GTK_ACCESSIBLE (obj));
+  if (widget == NULL)
+    return NULL;
+
+  name = ATK_OBJECT_CLASS (gtk_button_accessible_parent_class)->get_name (obj);
+  if (name != NULL)
+    return name;
+
+  child = get_label_from_button (widget);
+  if (GTK_IS_LABEL (child))
+    name = gtk_label_get_text (GTK_LABEL (child));
+  else
+    {
+      GtkWidget *image;
+
+      image = get_image_from_button (widget);
+      if (GTK_IS_IMAGE (image))
+        {
+          AtkObject *atk_obj;
+
+          atk_obj = gtk_widget_get_accessible (image);
+          name = atk_object_get_name (atk_obj);
+        }
+    }
+
+  return name;
+}
+
+static gint
+gtk_button_accessible_get_n_children (AtkObject* obj)
+{
+  return 0;
+}
+
+static AtkObject *
+gtk_button_accessible_ref_child (AtkObject *obj,
+                                 gint       i)
+{
+  return NULL;
+}
+
+static AtkStateSet *
+gtk_button_accessible_ref_state_set (AtkObject *obj)
+{
+  AtkStateSet *state_set;
+  GtkWidget *widget;
+
+  widget = gtk_accessible_get_widget (GTK_ACCESSIBLE (obj));
+  if (widget == NULL)
+    return NULL;
+
+  state_set = ATK_OBJECT_CLASS (gtk_button_accessible_parent_class)->ref_state_set (obj);
+
+  if ((gtk_widget_get_state_flags (widget) & GTK_STATE_FLAG_ACTIVE) != 0)
+    atk_state_set_add_state (state_set, ATK_STATE_ARMED);
+
+  if (!gtk_widget_get_can_focus (widget))
+    atk_state_set_remove_state (state_set, ATK_STATE_SELECTABLE);
+
+  return state_set;
+}
+
+static void
+gtk_button_accessible_notify_gtk (GObject    *obj,
+                                  GParamSpec *pspec)
+{
+  GtkWidget *widget = GTK_WIDGET (obj);
+  AtkObject *atk_obj = gtk_widget_get_accessible (widget);
+
+  if (strcmp (pspec->name, "label") == 0)
+    {
+      if (atk_obj->name == NULL)
+        g_object_notify (G_OBJECT (atk_obj), "accessible-name");
+
+      g_signal_emit_by_name (atk_obj, "visible_data_changed");
+    }
+  else
+    GAIL_WIDGET_CLASS (gtk_button_accessible_parent_class)->notify_gtk (obj, pspec);
+}
+
+static void
+gtk_button_accessible_class_init (GtkButtonAccessibleClass *klass)
+{
+  AtkObjectClass *class = ATK_OBJECT_CLASS (klass);
+  GailContainerClass *container_class = (GailContainerClass*)klass;
+  GailWidgetClass *widget_class = (GailWidgetClass*)klass;
+
+  class->get_name = gtk_button_accessible_get_name;
+  class->get_n_children = gtk_button_accessible_get_n_children;
+  class->ref_child = gtk_button_accessible_ref_child;
+  class->ref_state_set = gtk_button_accessible_ref_state_set;
+  class->initialize = gtk_button_accessible_initialize;
+
+  widget_class->notify_gtk = gtk_button_accessible_notify_gtk;
+
+  container_class->add_gtk = NULL;
+  container_class->remove_gtk = NULL;
+}
+
+static void
+gtk_button_accessible_init (GtkButtonAccessible *button)
+{
+}
+
+static gboolean
+gtk_button_accessible_do_action (AtkAction *action,
+                                 gint       i)
+{
+  GtkWidget *widget;
+
+  widget = gtk_accessible_get_widget (GTK_ACCESSIBLE (action));
+  if (widget == NULL)
+    return FALSE;
+
+  if (i != 0)
+    return FALSE;
+
+  if (!gtk_widget_is_sensitive (widget) || !gtk_widget_get_visible (widget))
+    return FALSE;
+
+  gtk_button_clicked (GTK_BUTTON (widget));
+  return TRUE;
+}
+
+static gint
+gtk_button_accessible_get_n_actions (AtkAction *action)
+{
+  return 1;
+}
+
+static const gchar *
+gtk_button_accessible_get_keybinding (AtkAction *action,
+                                      gint       i)
+{
+  GtkButtonAccessible *button;
+  gchar *return_value = NULL;
+  GtkWidget *widget;
+  GtkWidget *label;
+  guint key_val;
+
+  widget = gtk_accessible_get_widget (GTK_ACCESSIBLE (action));
+  if (widget == NULL)
+    return NULL;
+
+  if (i != 0)
+    return NULL;
+
+  button = GTK_BUTTON_ACCESSIBLE (action);
+
+  label = get_label_from_button (widget);
+  if (GTK_IS_LABEL (label))
+    {
+      key_val = gtk_label_get_mnemonic_keyval (GTK_LABEL (label));
+      if (key_val != GDK_KEY_VoidSymbol)
+        return_value = gtk_accelerator_name (key_val, GDK_MOD1_MASK);
+    }
+  if (return_value == NULL)
+    {
+      /* Find labelled-by relation */
+      AtkRelationSet *set;
+      AtkRelation *relation;
+      GPtrArray *target;
+      gpointer target_object;
+
+      set = atk_object_ref_relation_set (ATK_OBJECT (action));
+      if (set)
+        {
+          relation = atk_relation_set_get_relation_by_type (set, ATK_RELATION_LABELLED_BY);
+          if (relation)
+            {
+              target = atk_relation_get_target (relation);
+              target_object = g_ptr_array_index (target, 0);
+              label = gtk_accessible_get_widget (GTK_ACCESSIBLE (target_object));
+            }
+          g_object_unref (set);
+        }
+
+      if (GTK_IS_LABEL (label))
+        {
+          key_val = gtk_label_get_mnemonic_keyval (GTK_LABEL (label));
+          if (key_val != GDK_KEY_VoidSymbol)
+            return_value = gtk_accelerator_name (key_val, GDK_MOD1_MASK);
+        }
+    }
+  return return_value;
+}
+
+static const gchar *
+gtk_button_accessible_action_get_name (AtkAction *action,
+                                       gint       i)
+{
+  if (i != 0)
+    return NULL;
+
+  return "click";
+}
+
+static void
+atk_action_interface_init (AtkActionIface *iface)
+{
+  iface->do_action = gtk_button_accessible_do_action;
+  iface->get_n_actions = gtk_button_accessible_get_n_actions;
+  iface->get_keybinding = gtk_button_accessible_get_keybinding;
+  iface->get_name = gtk_button_accessible_action_get_name;
+}
+
+static const gchar *
+gtk_button_accessible_get_image_description (AtkImage *image)
+{
+  GtkWidget *widget;
+  GtkWidget  *button_image;
+  AtkObject *obj;
+
+  widget = gtk_accessible_get_widget (GTK_ACCESSIBLE (image));
+  if (widget == NULL)
+    return NULL;
+
+  button_image = get_image_from_button (widget);
+  if (GTK_IS_IMAGE (button_image))
+    {
+      obj = gtk_widget_get_accessible (button_image);
+      return atk_image_get_image_description (ATK_IMAGE (obj));
+    }
+
+  return NULL;
+}
+
+static void
+gtk_button_accessible_get_image_position (AtkImage     *image,
+                                          gint         *x,
+                                          gint         *y,
+                                          AtkCoordType  coord_type)
+{
+  GtkWidget *widget;
+  GtkImage  *button_image;
+  AtkObject *obj;
+
+  widget = gtk_accessible_get_widget (GTK_ACCESSIBLE (image));
+  if (widget == NULL)
+    {
+      *x = G_MININT;
+      *y = G_MININT;
+      return;
+    }
+
+  button_image = get_image_from_button (widget);
+
+  if (button_image != NULL)
+    {
+      obj = gtk_widget_get_accessible (GTK_WIDGET (button_image));
+      atk_component_get_position (ATK_COMPONENT (obj), x, y, coord_type);
+    }
+  else
+    {
+      *x = G_MININT;
+      *y = G_MININT;
+    }
+}
+
+static void
+gtk_button_accessible_get_image_size (AtkImage *image,
+                                      gint     *width,
+                                      gint     *height)
+{
+  GtkWidget *widget;
+  GtkImage  *button_image;
+  AtkObject *obj;
+
+  widget = gtk_accessible_get_widget (GTK_ACCESSIBLE (image));
+  if (widget == NULL)
+    {
+      *width = -1;
+      *height = -1;
+      return;
+    }
+
+  button_image = get_image_from_button (widget);
+
+  if (button_image != NULL)
+    {
+      obj = gtk_widget_get_accessible (GTK_WIDGET (button_image));
+      atk_image_get_image_size (ATK_IMAGE (obj), width, height);
+    }
+  else
+    {
+      *width = -1;
+      *height = -1;
+    }
+}
+
+static gboolean
+gtk_button_accessible_set_image_description (AtkImage    *image,
+                                             const gchar *description)
+{
+  GtkWidget *widget;
+  GtkImage  *button_image;
+  AtkObject *obj;
+
+  widget = gtk_accessible_get_widget (GTK_ACCESSIBLE (image));
+
+  if (widget == NULL)
+    return FALSE;
+
+  button_image = get_image_from_button (widget);
+
+  if (button_image != NULL)
+    {
+      obj = gtk_widget_get_accessible (GTK_WIDGET (button_image));
+      return atk_image_set_image_description (ATK_IMAGE (obj), description);
+    }
+
+  return FALSE;
+}
+
+static void
+atk_image_interface_init (AtkImageIface *iface)
+{
+  iface->get_image_description = gtk_button_accessible_get_image_description;
+  iface->get_image_position = gtk_button_accessible_get_image_position;
+  iface->get_image_size = gtk_button_accessible_get_image_size;
+  iface->set_image_description = gtk_button_accessible_set_image_description;
+}
diff --git a/gtk/a11y/gtkbuttonaccessible.h b/gtk/a11y/gtkbuttonaccessible.h
new file mode 100644
index 0000000..66986da
--- /dev/null
+++ b/gtk/a11y/gtkbuttonaccessible.h
@@ -0,0 +1,52 @@
+/* GAIL - The GNOME Accessibility Implementation Library
+ * Copyright 2001 Sun Microsystems Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifndef __GTK_BUTTON_ACCESSIBLE_H__
+#define __GTK_BUTTON_ACCESSIBLE_H__
+
+#include "gailcontainer.h"
+#include "gailtextutil.h"
+
+G_BEGIN_DECLS
+
+#define GTK_TYPE_BUTTON_ACCESSIBLE                     (gtk_button_accessible_get_type ())
+#define GTK_BUTTON_ACCESSIBLE(obj)                     (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_BUTTON_ACCESSIBLE, GtkButtonAccessible))
+#define GTK_BUTTON_ACCESSIBLE_CLASS(klass)             (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_BUTTON_ACCESSIBLE, GtkButtonAccessibleClass))
+#define GTK_IS_BUTTON_ACCESSIBLE(obj)                  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_BUTTON_ACCESSIBLE))
+#define GTK_IS_BUTTON_ACCESSIBLE_CLASS(klass)          (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_BUTTON_ACCESSIBLE))
+#define GTK_BUTTON_ACCESSIBLE_GET_CLASS(obj)           (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_BUTTON_ACCESSIBLE, GtkButtonAccessibleClass))
+
+typedef struct _GtkButtonAccessible      GtkButtonAccessible;
+typedef struct _GtkButtonAccessibleClass GtkButtonAccessibleClass;
+
+struct _GtkButtonAccessible
+{
+  GailContainer parent;
+};
+
+struct _GtkButtonAccessibleClass
+{
+  GailContainerClass parent_class;
+};
+
+GType gtk_button_accessible_get_type (void);
+
+G_END_DECLS
+
+#endif /* __GTK_BUTTON_ACCESSIBLE_H__ */
diff --git a/gtk/a11y/gtklinkbuttonaccessible.c b/gtk/a11y/gtklinkbuttonaccessible.c
index fc2590c..961b718 100644
--- a/gtk/a11y/gtklinkbuttonaccessible.c
+++ b/gtk/a11y/gtklinkbuttonaccessible.c
@@ -190,7 +190,7 @@ gtk_link_button_accessible_get_hyperlink (AtkHyperlinkImpl *impl)
 
 static void atk_hypertext_impl_interface_init (AtkHyperlinkImplIface *iface);
 
-G_DEFINE_TYPE_WITH_CODE (GtkLinkButtonAccessible, gtk_link_button_accessible, GAIL_TYPE_BUTTON,
+G_DEFINE_TYPE_WITH_CODE (GtkLinkButtonAccessible, gtk_link_button_accessible, GTK_TYPE_BUTTON_ACCESSIBLE,
                          G_IMPLEMENT_INTERFACE (ATK_TYPE_HYPERLINK_IMPL, atk_hypertext_impl_interface_init))
 
 static void
diff --git a/gtk/a11y/gtklinkbuttonaccessible.h b/gtk/a11y/gtklinkbuttonaccessible.h
index ff944c7..5f3693b 100644
--- a/gtk/a11y/gtklinkbuttonaccessible.h
+++ b/gtk/a11y/gtklinkbuttonaccessible.h
@@ -20,7 +20,7 @@
 #ifndef __GTK_LINK_BUTTON_ACCESSIBLE_H__
 #define __GTK_LINK_BUTTON_ACCESSIBLE_H__
 
-#include "gailbutton.h"
+#include "gtkbuttonaccessible.h"
 
 G_BEGIN_DECLS
 
@@ -36,14 +36,14 @@ typedef struct _GtkLinkButtonAccessibleClass GtkLinkButtonAccessibleClass;
 
 struct _GtkLinkButtonAccessible
 {
-  GailButton parent;
+  GtkButtonAccessible parent;
 
   AtkHyperlink *link;
 };
 
 struct _GtkLinkButtonAccessibleClass
 {
-  GailButtonClass parent_class;
+  GtkButtonAccessibleClass parent_class;
 };
 
 GType gtk_link_button_accessible_get_type (void);
diff --git a/gtk/a11y/gtkscalebuttonaccessible.c b/gtk/a11y/gtkscalebuttonaccessible.c
index 60592c3..c5e33e4 100644
--- a/gtk/a11y/gtkscalebuttonaccessible.c
+++ b/gtk/a11y/gtkscalebuttonaccessible.c
@@ -28,7 +28,7 @@
 static void atk_action_interface_init (AtkActionIface *iface);
 static void atk_value_interface_init  (AtkValueIface  *iface);
 
-G_DEFINE_TYPE_WITH_CODE (GtkScaleButtonAccessible, gtk_scale_button_accessible, GAIL_TYPE_BUTTON,
+G_DEFINE_TYPE_WITH_CODE (GtkScaleButtonAccessible, gtk_scale_button_accessible, GTK_TYPE_BUTTON_ACCESSIBLE,
                          G_IMPLEMENT_INTERFACE (ATK_TYPE_ACTION, atk_action_interface_init)
                          G_IMPLEMENT_INTERFACE (ATK_TYPE_VALUE, atk_value_interface_init));
 
diff --git a/gtk/a11y/gtkscalebuttonaccessible.h b/gtk/a11y/gtkscalebuttonaccessible.h
index 442c55a..b1e854e 100644
--- a/gtk/a11y/gtkscalebuttonaccessible.h
+++ b/gtk/a11y/gtkscalebuttonaccessible.h
@@ -21,7 +21,7 @@
 #define __GTK_SCALE_BUTTON_ACCESSIBLE_H__
 
 #include <gtk/gtk.h>
-#include "gailbutton.h"
+#include "gtkbuttonaccessible.h"
 
 G_BEGIN_DECLS
 
@@ -37,12 +37,12 @@ typedef struct _GtkScaleButtonAccessibleClass GtkScaleButtonAccessibleClass;
 
 struct _GtkScaleButtonAccessible
 {
-  GailButton parent;
+  GtkButtonAccessible parent;
 };
 
 struct _GtkScaleButtonAccessibleClass
 {
-  GailButtonClass parent_class;
+  GtkButtonAccessibleClass parent_class;
 };
 
 GType gtk_scale_button_accessible_get_type (void);
diff --git a/gtk/a11y/gtktogglebuttonaccessible.c b/gtk/a11y/gtktogglebuttonaccessible.c
index 04322f6..b742a96 100644
--- a/gtk/a11y/gtktogglebuttonaccessible.c
+++ b/gtk/a11y/gtktogglebuttonaccessible.c
@@ -24,7 +24,7 @@
 #include "gtktogglebuttonaccessible.h"
 
 
-G_DEFINE_TYPE (GtkToggleButtonAccessible, gtk_toggle_button_accessible, GAIL_TYPE_BUTTON)
+G_DEFINE_TYPE (GtkToggleButtonAccessible, gtk_toggle_button_accessible, GTK_TYPE_BUTTON_ACCESSIBLE)
 
 static void
 gtk_toggle_button_accessible_toggled (GtkWidget *widget)
diff --git a/gtk/a11y/gtktogglebuttonaccessible.h b/gtk/a11y/gtktogglebuttonaccessible.h
index 0159cfc..dea92d3 100644
--- a/gtk/a11y/gtktogglebuttonaccessible.h
+++ b/gtk/a11y/gtktogglebuttonaccessible.h
@@ -20,7 +20,7 @@
 #ifndef __GTK_TOGGLE_BUTTON_ACCESSIBLE_H__
 #define __GTK_TOGGLE_BUTTON_ACCESSIBLE_H__
 
-#include "gailbutton.h"
+#include "gtkbuttonaccessible.h"
 
 G_BEGIN_DECLS
 
@@ -36,12 +36,12 @@ typedef struct _GtkToggleButtonAccessibleClass GtkToggleButtonAccessibleClass;
 
 struct _GtkToggleButtonAccessible
 {
-  GailButton parent;
+  GtkButtonAccessible parent;
 };
 
 struct _GtkToggleButtonAccessibleClass
 {
-  GailButtonClass parent_class;
+  GtkButtonAccessibleClass parent_class;
 };
 
 GType gtk_toggle_button_accessible_get_type (void);
diff --git a/gtk/gtkbutton.c b/gtk/gtkbutton.c
index 3072635..6b96784 100644
--- a/gtk/gtkbutton.c
+++ b/gtk/gtkbutton.c
@@ -58,6 +58,7 @@
 #include "gtktypebuiltins.h"
 #include "gtkprivate.h"
 #include "gtkintl.h"
+#include "a11y/gtkbuttonaccessible.h"
 
 
 static const GtkBorder default_default_border = { 1, 1, 1, 1 };
@@ -528,6 +529,8 @@ gtk_button_class_init (GtkButtonClass *klass)
 							     GTK_PARAM_READABLE));
 
   g_type_class_add_private (gobject_class, sizeof (GtkButtonPrivate));
+
+  gtk_widget_class_set_accessible_type (widget_class, GTK_TYPE_BUTTON_ACCESSIBLE);
 }
 
 static void
diff --git a/tests/a11y/about.txt b/tests/a11y/about.txt
index c2c0fed..69735d9 100644
--- a/tests/a11y/about.txt
+++ b/tests/a11y/about.txt
@@ -316,7 +316,7 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      License
+      unnamed-GtkToggleButtonAccessible-8
         "toggle button"
         parent: unnamed-GtkBoxAccessible-7
         index: 0
@@ -326,44 +326,13 @@ window1
         <AtkComponent>
         layer: widget
         alpha: 1
-        <AtkText>
-        text: License
-        character count: 7
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            bg-stipple: false
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            fg-stipple: false
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
         <AtkImage>
         image size: -1 x -1
         image description: (null)
         <AtkAction>
         action 0 name: click
         action 0 keybinding: <Alt>l
-      Credits
+      unnamed-GtkToggleButtonAccessible-9
         "toggle button"
         parent: unnamed-GtkBoxAccessible-7
         index: 1
@@ -373,44 +342,13 @@ window1
         <AtkComponent>
         layer: widget
         alpha: 1
-        <AtkText>
-        text: Credits
-        character count: 7
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            bg-stipple: false
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            fg-stipple: false
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
         <AtkImage>
         image size: 20 x 20
         image description: (null)
         <AtkAction>
         action 0 name: click
         action 0 keybinding: <Alt>r
-      Close
+      unnamed-GtkButtonAccessible-10
         "push button"
         parent: unnamed-GtkBoxAccessible-7
         index: 2
@@ -420,37 +358,6 @@ window1
         <AtkComponent>
         layer: widget
         alpha: 1
-        <AtkText>
-        text: Close
-        character count: 5
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            bg-stipple: false
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            fg-stipple: false
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
         <AtkImage>
         image size: 20 x 20
         image description: (null)
diff --git a/tests/a11y/accessible-name.txt b/tests/a11y/accessible-name.txt
index 43356e7..004c075 100644
--- a/tests/a11y/accessible-name.txt
+++ b/tests/a11y/accessible-name.txt
@@ -16,37 +16,6 @@ window1
     <AtkComponent>
     layer: widget
     alpha: 1
-    <AtkText>
-    text: Hello World!
-    character count: 12
-    caret offset: 0
-    default attributes: bg-color: <omitted>
-                        bg-full-height: 0
-                        bg-stipple: false
-                        direction: <omitted>
-                        editable: false
-                        family-name: <omitted>
-                        fg-color: <omitted>
-                        fg-stipple: false
-                        indent: 0
-                        invisible: false
-                        justification: left
-                        language: <omitted>
-                        left-margin: 0
-                        pixels-above-lines: 0
-                        pixels-below-lines: 0
-                        pixels-inside-wrap: 0
-                        right-margin: 0
-                        rise: 0
-                        scale: 1
-                        size: <omitted>
-                        stretch: <omitted>
-                        strikethrough: false
-                        style: <omitted>
-                        underline: none
-                        variant: <omitted>
-                        weight: <omitted>
-                        wrap-mode: word
     <AtkImage>
     image size: -1 x -1
     image description: (null)
diff --git a/tests/a11y/appchooser.txt b/tests/a11y/appchooser.txt
index c27d416..51e091c 100644
--- a/tests/a11y/appchooser.txt
+++ b/tests/a11y/appchooser.txt
@@ -106,7 +106,7 @@ window1
               columns: 1
               column 0 description: 
               <column 0 header>
-              
+              unnamed-GtkButtonAccessible-6
                 "table column header"
                 parent: unnamed-GtkTreeViewAccessible-5
                 index: 0
@@ -116,43 +116,12 @@ window1
                 <AtkComponent>
                 layer: widget
                 alpha: 1
-                <AtkText>
-                text: 
-                character count: 0
-                caret offset: 0
-                default attributes: bg-color: <omitted>
-                                    bg-full-height: 0
-                                    bg-stipple: false
-                                    direction: <omitted>
-                                    editable: false
-                                    family-name: <omitted>
-                                    fg-color: <omitted>
-                                    fg-stipple: false
-                                    indent: 0
-                                    invisible: false
-                                    justification: left
-                                    language: <omitted>
-                                    left-margin: 0
-                                    pixels-above-lines: 0
-                                    pixels-below-lines: 0
-                                    pixels-inside-wrap: 0
-                                    right-margin: 0
-                                    rise: 0
-                                    scale: 1
-                                    size: <omitted>
-                                    stretch: <omitted>
-                                    strikethrough: false
-                                    style: <omitted>
-                                    underline: none
-                                    variant: <omitted>
-                                    weight: <omitted>
-                                    wrap-mode: word
                 <AtkImage>
                 image size: -1 x -1
                 image description: (null)
                 <AtkAction>
                 action 0 name: click
-              
+              unnamed-GtkButtonAccessible-6
                 "table column header"
                 parent: unnamed-GtkTreeViewAccessible-5
                 index: 0
@@ -162,43 +131,12 @@ window1
                 <AtkComponent>
                 layer: widget
                 alpha: 1
-                <AtkText>
-                text: 
-                character count: 0
-                caret offset: 0
-                default attributes: bg-color: <omitted>
-                                    bg-full-height: 0
-                                    bg-stipple: false
-                                    direction: <omitted>
-                                    editable: false
-                                    family-name: <omitted>
-                                    fg-color: <omitted>
-                                    fg-stipple: false
-                                    indent: 0
-                                    invisible: false
-                                    justification: left
-                                    language: <omitted>
-                                    left-margin: 0
-                                    pixels-above-lines: 0
-                                    pixels-below-lines: 0
-                                    pixels-inside-wrap: 0
-                                    right-margin: 0
-                                    rise: 0
-                                    scale: 1
-                                    size: <omitted>
-                                    stretch: <omitted>
-                                    strikethrough: false
-                                    style: <omitted>
-                                    underline: none
-                                    variant: <omitted>
-                                    weight: <omitted>
-                                    wrap-mode: word
                 <AtkImage>
                 image size: -1 x -1
                 image description: (null)
                 <AtkAction>
                 action 0 name: click
-              unnamed-GailContainerCell-6
+              unnamed-GailContainerCell-7
                 "table cell"
                 parent: unnamed-GtkTreeViewAccessible-5
                 index: 1
@@ -336,7 +274,7 @@ Click "Show other applications", for more options, or "Find applications online"
                   <AtkAction>
                   action 0 name: activate
                   action 0 description: activate the cell
-                unnamed-GailImageCell-7
+                unnamed-GailImageCell-8
                   "table cell"
                   index: 3
                   state: enabled focusable focused selectable sensitive transient visible
@@ -391,7 +329,7 @@ Click "Show other applications", for more options, or "Find applications online"
                   <AtkAction>
                   action 0 name: activate
                   action 0 description: activate the cell
-            unnamed-GtkScrollbarAccessible-8
+            unnamed-GtkScrollbarAccessible-9
               "scroll bar"
               parent: unnamed-GtkScrolledWindowAccessible-4
               index: 1
@@ -407,7 +345,7 @@ Click "Show other applications", for more options, or "Find applications online"
               maximum value: 0.000000
               current value: 0.000000
               minimum increment: 39.800000
-            unnamed-GtkScrollbarAccessible-9
+            unnamed-GtkScrollbarAccessible-10
               "scroll bar"
               parent: unnamed-GtkScrolledWindowAccessible-4
               index: 2
@@ -423,7 +361,7 @@ Click "Show other applications", for more options, or "Find applications online"
               maximum value: 0.000000
               current value: 0.000000
               minimum increment: 29.800000
-          Show other applications
+          unnamed-GtkButtonAccessible-11
             "push button"
             parent: unnamed-GtkBoxAccessible-3
             index: 1
@@ -433,43 +371,12 @@ Click "Show other applications", for more options, or "Find applications online"
             <AtkComponent>
             layer: widget
             alpha: 1
-            <AtkText>
-            text: Show other applications
-            character count: 23
-            caret offset: 0
-            default attributes: bg-color: <omitted>
-                                bg-full-height: 0
-                                bg-stipple: false
-                                direction: <omitted>
-                                editable: false
-                                family-name: <omitted>
-                                fg-color: <omitted>
-                                fg-stipple: false
-                                indent: 0
-                                invisible: false
-                                justification: left
-                                language: <omitted>
-                                left-margin: 0
-                                pixels-above-lines: 0
-                                pixels-below-lines: 0
-                                pixels-inside-wrap: 0
-                                right-margin: 0
-                                rise: 0
-                                scale: 1
-                                size: <omitted>
-                                stretch: <omitted>
-                                strikethrough: false
-                                style: <omitted>
-                                underline: none
-                                variant: <omitted>
-                                weight: <omitted>
-                                wrap-mode: word
             <AtkImage>
             image size: 20 x 20
             image description: (null)
             <AtkAction>
             action 0 name: click
-    unnamed-GtkBoxAccessible-10
+    unnamed-GtkBoxAccessible-12
       "filler"
       parent: unnamed-GtkBoxAccessible-0
       index: 1
@@ -478,9 +385,9 @@ Click "Show other applications", for more options, or "Find applications online"
       <AtkComponent>
       layer: widget
       alpha: 1
-      Select
+      unnamed-GtkButtonAccessible-13
         "push button"
-        parent: unnamed-GtkBoxAccessible-10
+        parent: unnamed-GtkBoxAccessible-12
         index: 0
         name: Select
         state: enabled focusable sensitive showing visible default
@@ -488,46 +395,15 @@ Click "Show other applications", for more options, or "Find applications online"
         <AtkComponent>
         layer: widget
         alpha: 1
-        <AtkText>
-        text: Select
-        character count: 6
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            bg-stipple: false
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            fg-stipple: false
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
         <AtkImage>
         image size: -1 x -1
         image description: (null)
         <AtkAction>
         action 0 name: click
         action 0 keybinding: <Alt>s
-      Cancel
+      unnamed-GtkButtonAccessible-14
         "push button"
-        parent: unnamed-GtkBoxAccessible-10
+        parent: unnamed-GtkBoxAccessible-12
         index: 1
         name: Cancel
         state: enabled focusable sensitive showing visible
@@ -535,37 +411,6 @@ Click "Show other applications", for more options, or "Find applications online"
         <AtkComponent>
         layer: widget
         alpha: 1
-        <AtkText>
-        text: Cancel
-        character count: 6
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            bg-stipple: false
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            fg-stipple: false
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
         <AtkImage>
         image size: 20 x 20
         image description: (null)
diff --git a/tests/a11y/assistant.txt b/tests/a11y/assistant.txt
index ce8e074..0a92cda 100644
--- a/tests/a11y/assistant.txt
+++ b/tests/a11y/assistant.txt
@@ -15,37 +15,6 @@ window1
     <AtkComponent>
     layer: widget
     alpha: 1
-    <AtkText>
-    text: Button 1
-    character count: 8
-    caret offset: 0
-    default attributes: bg-color: <omitted>
-                        bg-full-height: 0
-                        bg-stipple: false
-                        direction: <omitted>
-                        editable: false
-                        family-name: <omitted>
-                        fg-color: <omitted>
-                        fg-stipple: false
-                        indent: 0
-                        invisible: false
-                        justification: left
-                        language: <omitted>
-                        left-margin: 0
-                        pixels-above-lines: 0
-                        pixels-below-lines: 0
-                        pixels-inside-wrap: 0
-                        right-margin: 0
-                        rise: 0
-                        scale: 1
-                        size: <omitted>
-                        stretch: <omitted>
-                        strikethrough: false
-                        style: <omitted>
-                        underline: none
-                        variant: <omitted>
-                        weight: <omitted>
-                        wrap-mode: word
     <AtkImage>
     image size: -1 x -1
     image description: (null)
@@ -60,37 +29,6 @@ window1
     <AtkComponent>
     layer: widget
     alpha: 1
-    <AtkText>
-    text: Button 2
-    character count: 8
-    caret offset: 0
-    default attributes: bg-color: <omitted>
-                        bg-full-height: 0
-                        bg-stipple: false
-                        direction: <omitted>
-                        editable: false
-                        family-name: <omitted>
-                        fg-color: <omitted>
-                        fg-stipple: false
-                        indent: 0
-                        invisible: false
-                        justification: left
-                        language: <omitted>
-                        left-margin: 0
-                        pixels-above-lines: 0
-                        pixels-below-lines: 0
-                        pixels-inside-wrap: 0
-                        right-margin: 0
-                        rise: 0
-                        scale: 1
-                        size: <omitted>
-                        stretch: <omitted>
-                        strikethrough: false
-                        style: <omitted>
-                        underline: none
-                        variant: <omitted>
-                        weight: <omitted>
-                        wrap-mode: word
     <AtkImage>
     image size: -1 x -1
     image description: (null)
@@ -105,7 +43,7 @@ window1
     <AtkComponent>
     layer: widget
     alpha: 1
-    Close
+    unnamed-GtkButtonAccessible-2
       "push button"
       parent: unnamed-GtkBoxAccessible-0
       index: 0
@@ -115,44 +53,13 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Close
-      character count: 5
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: 20 x 20
       image description: (null)
       <AtkAction>
       action 0 name: click
       action 0 keybinding: <Alt>c
-    Cancel
+    unnamed-GtkButtonAccessible-3
       "push button"
       parent: unnamed-GtkBoxAccessible-0
       index: 1
@@ -162,44 +69,13 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Cancel
-      character count: 6
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: 20 x 20
       image description: (null)
       <AtkAction>
       action 0 name: click
       action 0 keybinding: <Alt>c
-    Finish
+    unnamed-GtkButtonAccessible-4
       "push button"
       parent: unnamed-GtkBoxAccessible-0
       index: 2
@@ -209,44 +85,13 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Finish
-      character count: 6
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: -1 x -1
       image description: (null)
       <AtkAction>
       action 0 name: click
       action 0 keybinding: <Alt>f
-    Go Back
+    unnamed-GtkButtonAccessible-5
       "push button"
       parent: unnamed-GtkBoxAccessible-0
       index: 3
@@ -256,44 +101,13 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Go Back
-      character count: 7
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: -1 x -1
       image description: (null)
       <AtkAction>
       action 0 name: click
       action 0 keybinding: <Alt>b
-    Continue
+    unnamed-GtkButtonAccessible-6
       "push button"
       parent: unnamed-GtkBoxAccessible-0
       index: 4
@@ -303,44 +117,13 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Continue
-      character count: 8
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: 20 x 20
       image description: (null)
       <AtkAction>
       action 0 name: click
       action 0 keybinding: <Alt>o
-    Apply
+    unnamed-GtkButtonAccessible-7
       "push button"
       parent: unnamed-GtkBoxAccessible-0
       index: 5
@@ -350,37 +133,6 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Apply
-      character count: 5
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: 20 x 20
       image description: (null)
diff --git a/tests/a11y/buttons.txt b/tests/a11y/buttons.txt
index 0f58210..8a420ec 100644
--- a/tests/a11y/buttons.txt
+++ b/tests/a11y/buttons.txt
@@ -40,37 +40,6 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Hello World!
-      character count: 12
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: -1 x -1
       image description: (null)
@@ -88,37 +57,6 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Hello World!
-      character count: 12
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: -1 x -1
       image description: (null)
@@ -134,37 +72,6 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Hello World!
-      character count: 12
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: -1 x -1
       image description: (null)
@@ -180,37 +87,6 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Hello World!
-      character count: 12
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: -1 x -1
       image description: (null)
diff --git a/tests/a11y/colorchooser.txt b/tests/a11y/colorchooser.txt
index f1f4428..84c82ab 100644
--- a/tests/a11y/colorchooser.txt
+++ b/tests/a11y/colorchooser.txt
@@ -102,7 +102,7 @@ window1
                   <AtkComponent>
                   layer: widget
                   alpha: 1
-            unnamed-GailButton-10
+            unnamed-GtkButtonAccessible-10
               "push button"
               parent: unnamed-GtkBoxAccessible-5
               index: 1
@@ -112,12 +112,8 @@ window1
               <AtkComponent>
               layer: widget
               alpha: 1
-              <AtkText>
-              text: (null)
-              character count: 0
-              caret offset: 0
               <AtkImage>
-              image size: 20 x 20
+              image size: -1 x -1
               image description: (null)
               <AtkAction>
               action 0 name: click
@@ -1313,7 +1309,7 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      Help
+      unnamed-GtkButtonAccessible-58
         "push button"
         parent: unnamed-GtkBoxAccessible-57
         index: 0
@@ -1323,44 +1319,13 @@ window1
         <AtkComponent>
         layer: widget
         alpha: 1
-        <AtkText>
-        text: Help
-        character count: 4
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            bg-stipple: false
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            fg-stipple: false
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
         <AtkImage>
         image size: 20 x 20
         image description: (null)
         <AtkAction>
         action 0 name: click
         action 0 keybinding: <Alt>h
-      OK
+      unnamed-GtkButtonAccessible-59
         "push button"
         parent: unnamed-GtkBoxAccessible-57
         index: 1
@@ -1370,44 +1335,13 @@ window1
         <AtkComponent>
         layer: widget
         alpha: 1
-        <AtkText>
-        text: OK
-        character count: 2
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            bg-stipple: false
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            fg-stipple: false
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
         <AtkImage>
         image size: 20 x 20
         image description: (null)
         <AtkAction>
         action 0 name: click
         action 0 keybinding: <Alt>o
-      Cancel
+      unnamed-GtkButtonAccessible-60
         "push button"
         parent: unnamed-GtkBoxAccessible-57
         index: 2
@@ -1417,37 +1351,6 @@ window1
         <AtkComponent>
         layer: widget
         alpha: 1
-        <AtkText>
-        text: Cancel
-        character count: 6
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            bg-stipple: false
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            fg-stipple: false
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
         <AtkImage>
         image size: 20 x 20
         image description: (null)
diff --git a/tests/a11y/hello-world.txt b/tests/a11y/hello-world.txt
index feb415a..f6ed440 100644
--- a/tests/a11y/hello-world.txt
+++ b/tests/a11y/hello-world.txt
@@ -16,37 +16,6 @@ window1
     <AtkComponent>
     layer: widget
     alpha: 1
-    <AtkText>
-    text: Hello World!
-    character count: 12
-    caret offset: 0
-    default attributes: bg-color: <omitted>
-                        bg-full-height: 0
-                        bg-stipple: false
-                        direction: <omitted>
-                        editable: false
-                        family-name: <omitted>
-                        fg-color: <omitted>
-                        fg-stipple: false
-                        indent: 0
-                        invisible: false
-                        justification: left
-                        language: <omitted>
-                        left-margin: 0
-                        pixels-above-lines: 0
-                        pixels-below-lines: 0
-                        pixels-inside-wrap: 0
-                        right-margin: 0
-                        rise: 0
-                        scale: 1
-                        size: <omitted>
-                        stretch: <omitted>
-                        strikethrough: false
-                        style: <omitted>
-                        underline: none
-                        variant: <omitted>
-                        weight: <omitted>
-                        wrap-mode: word
     <AtkImage>
     image size: -1 x -1
     image description: (null)
diff --git a/tests/a11y/link.txt b/tests/a11y/link.txt
index 3dd8a18..10143fa 100644
--- a/tests/a11y/link.txt
+++ b/tests/a11y/link.txt
@@ -16,37 +16,6 @@ window1
     <AtkComponent>
     layer: widget
     alpha: 1
-    <AtkText>
-    text: Hello World!
-    character count: 12
-    caret offset: 0
-    default attributes: bg-color: <omitted>
-                        bg-full-height: 0
-                        bg-stipple: false
-                        direction: <omitted>
-                        editable: false
-                        family-name: <omitted>
-                        fg-color: <omitted>
-                        fg-stipple: false
-                        indent: 0
-                        invisible: false
-                        justification: left
-                        language: <omitted>
-                        left-margin: 0
-                        pixels-above-lines: 0
-                        pixels-below-lines: 0
-                        pixels-inside-wrap: 0
-                        right-margin: 0
-                        rise: 0
-                        scale: 1
-                        size: <omitted>
-                        stretch: <omitted>
-                        strikethrough: false
-                        style: <omitted>
-                        underline: none
-                        variant: <omitted>
-                        weight: <omitted>
-                        wrap-mode: word
     <AtkImage>
     image size: -1 x -1
     image description: (null)
diff --git a/tests/a11y/lockbutton.txt b/tests/a11y/lockbutton.txt
index 508c966..b7763eb 100644
--- a/tests/a11y/lockbutton.txt
+++ b/tests/a11y/lockbutton.txt
@@ -10,6 +10,7 @@ window1
     "push button"
     parent: window1
     index: 0
+    name: Lock
     description: Dialog is unlocked.
 Click to prevent further changes
     state: enabled focusable sensitive showing visible
@@ -17,90 +18,8 @@ Click to prevent further changes
     <AtkComponent>
     layer: widget
     alpha: 1
-    <AtkText>
-    text: (null)
-    character count: 0
-    caret offset: 0
     <AtkImage>
-    image size: 16 x 16
+    image size: -1 x -1
     image description: (null)
     <AtkAction>
     action 0 name: click
-    Lock
-      "label"
-      parent: button1
-      index: 0
-      name: Lock
-      state: enabled multi-line sensitive showing visible
-      toolkit: gail
-      <AtkComponent>
-      layer: widget
-      alpha: 1
-      <AtkText>
-      text: Lock
-      character count: 4
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
-    Unlock
-      "label"
-      parent: button1
-      index: 1
-      name: Unlock
-      state: enabled multi-line sensitive
-      toolkit: gail
-      <AtkComponent>
-      layer: widget
-      alpha: 1
-      <AtkText>
-      text: Unlock
-      character count: 6
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
diff --git a/tests/a11y/notebook.txt b/tests/a11y/notebook.txt
index 6f5d744..6387793 100644
--- a/tests/a11y/notebook.txt
+++ b/tests/a11y/notebook.txt
@@ -35,37 +35,6 @@ window1
         <AtkComponent>
         layer: widget
         alpha: 1
-        <AtkText>
-        text: Yes
-        character count: 3
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            bg-stipple: false
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            fg-stipple: false
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
         <AtkImage>
         image size: 20 x 20
         image description: (null)
@@ -90,37 +59,6 @@ window1
         <AtkComponent>
         layer: widget
         alpha: 1
-        <AtkText>
-        text: No
-        character count: 2
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            bg-stipple: false
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            fg-stipple: false
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
         <AtkImage>
         image size: 20 x 20
         image description: (null)
diff --git a/tests/a11y/pickers.txt b/tests/a11y/pickers.txt
index e5e3ce0..07e51ed 100644
--- a/tests/a11y/pickers.txt
+++ b/tests/a11y/pickers.txt
@@ -24,7 +24,7 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      (None)
+      unnamed-GtkButtonAccessible-0
         "push button"
         parent: button4
         index: 0
@@ -34,43 +34,12 @@ window1
         <AtkComponent>
         layer: widget
         alpha: 1
-        <AtkText>
-        text: (None)
-        character count: 6
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            bg-stipple: false
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            fg-stipple: false
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
         <AtkImage>
         image size: -1 x -1
         image description: (null)
         <AtkAction>
         action 0 name: click
-      unnamed-GtkComboBoxAccessible-0
+      unnamed-GtkComboBoxAccessible-1
         "combo box"
         parent: button4
         index: 1
@@ -82,9 +51,9 @@ window1
         <AtkAction>
         action 0 name: press
         <AtkSelection>
-        unnamed-GailMenu-1
+        unnamed-GailMenu-2
           "menu"
-          parent: unnamed-GtkComboBoxAccessible-0
+          parent: unnamed-GtkComboBoxAccessible-1
           index: 0
           state: enabled selectable sensitive
           toolkit: gail
@@ -92,9 +61,9 @@ window1
           layer: popup
           alpha: 1
           <AtkSelection>
-          unnamed-GailMenuItem-2
+          unnamed-GtkMenuItemAccessible-3
             "menu item"
-            parent: unnamed-GailMenu-1
+            parent: unnamed-GailMenu-2
             index: 0
             state: enabled selectable sensitive visible
             toolkit: gail
@@ -103,10 +72,11 @@ window1
             alpha: 1
             <AtkAction>
             action 0 name: click
-          unnamed-GailMenuItem-3
+          unnamed-GtkMenuItemAccessible-4
             "menu item"
-            parent: unnamed-GailMenu-1
+            parent: unnamed-GailMenu-2
             index: 1
+            name: File System
             state: enabled selectable sensitive visible
             toolkit: gail
             <AtkComponent>
@@ -114,10 +84,11 @@ window1
             alpha: 1
             <AtkAction>
             action 0 name: click
-          unnamed-GailMenuItem-4
+          unnamed-GtkMenuItemAccessible-5
             "menu item"
-            parent: unnamed-GailMenu-1
+            parent: unnamed-GailMenu-2
             index: 2
+            name: _F15-Livecd-Desk
             state: enabled selectable sensitive visible
             toolkit: gail
             <AtkComponent>
@@ -125,28 +96,33 @@ window1
             alpha: 1
             <AtkAction>
             action 0 name: click
-          unnamed-GtkSeparatorMenuItemAccessible-5
+          unnamed-GtkMenuItemAccessible-6
             "separator"
-            parent: unnamed-GailMenu-1
+            parent: unnamed-GailMenu-2
             index: 3
             state: enabled selectable sensitive visible
             toolkit: gail
             <AtkComponent>
-            layer: widget
+            layer: popup
             alpha: 1
-          unnamed-GtkSeparatorMenuItemAccessible-6
+            <AtkAction>
+            action 0 name: click
+          unnamed-GtkMenuItemAccessible-7
             "separator"
-            parent: unnamed-GailMenu-1
+            parent: unnamed-GailMenu-2
             index: 4
             state: enabled selectable sensitive visible
             toolkit: gail
             <AtkComponent>
-            layer: widget
+            layer: popup
             alpha: 1
-          unnamed-GailMenuItem-7
+            <AtkAction>
+            action 0 name: click
+          unnamed-GtkMenuItemAccessible-8
             "menu item"
-            parent: unnamed-GailMenu-1
+            parent: unnamed-GailMenu-2
             index: 5
+            name: Other...
             state: enabled selectable sensitive visible
             toolkit: gail
             <AtkComponent>
@@ -158,98 +134,17 @@ window1
       "push button"
       parent: grid1
       index: 1
+      name: Sans
       state: enabled focusable sensitive showing visible
       toolkit: gail
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: (null)
-      character count: 0
-      caret offset: 0
       <AtkImage>
       image size: -1 x -1
       image description: (null)
       <AtkAction>
       action 0 name: click
-      Sans
-        "label"
-        parent: button3
-        index: 0
-        name: Sans
-        state: enabled multi-line sensitive showing visible
-        toolkit: gail
-        <AtkComponent>
-        layer: widget
-        alpha: 1
-        <AtkText>
-        text: Sans
-        character count: 4
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
-      12
-        "label"
-        parent: button3
-        index: 1
-        name: 12
-        state: enabled multi-line sensitive showing visible
-        toolkit: gail
-        <AtkComponent>
-        layer: widget
-        alpha: 1
-        <AtkText>
-        text: 12
-        character count: 2
-        caret offset: 0
-        default attributes: bg-color: <omitted>
-                            bg-full-height: 0
-                            direction: <omitted>
-                            editable: false
-                            family-name: <omitted>
-                            fg-color: <omitted>
-                            indent: 0
-                            invisible: false
-                            justification: left
-                            language: <omitted>
-                            left-margin: 0
-                            pixels-above-lines: 0
-                            pixels-below-lines: 0
-                            pixels-inside-wrap: 0
-                            right-margin: 0
-                            rise: 0
-                            scale: 1
-                            size: <omitted>
-                            stretch: <omitted>
-                            strikethrough: false
-                            style: <omitted>
-                            underline: none
-                            variant: <omitted>
-                            weight: <omitted>
-                            wrap-mode: word
     button2
       "push button"
       parent: grid1
@@ -259,10 +154,6 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: (null)
-      character count: 0
-      caret offset: 0
       <AtkImage>
       image size: -1 x -1
       image description: (null)
@@ -280,7 +171,7 @@ window1
       <AtkAction>
       action 0 name: press
       <AtkSelection>
-      unnamed-GailMenu-8
+      unnamed-GailMenu-9
         "menu"
         parent: button1
         index: 0
diff --git a/tests/a11y/tree.txt b/tests/a11y/tree.txt
index 564ddf7..ead1ad4 100644
--- a/tests/a11y/tree.txt
+++ b/tests/a11y/tree.txt
@@ -24,7 +24,7 @@ window1
     selected rows: 0
     column 0 description: Column 1
     <column 0 header>
-    Column 1
+    unnamed-GtkButtonAccessible-0
       "table column header"
       parent: tree1
       index: 0
@@ -34,37 +34,6 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Column 1
-      character count: 8
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: -1 x -1
       image description: (null)
@@ -72,7 +41,7 @@ window1
       action 0 name: click
     column 1 description: Column 2
     <column 1 header>
-    Column 2
+    unnamed-GtkButtonAccessible-1
       "table column header"
       parent: tree1
       index: 1
@@ -82,43 +51,12 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Column 2
-      character count: 8
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: -1 x -1
       image description: (null)
       <AtkAction>
       action 0 name: click
-    Column 1
+    unnamed-GtkButtonAccessible-0
       "table column header"
       parent: tree1
       index: 0
@@ -128,43 +66,12 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Column 1
-      character count: 8
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: -1 x -1
       image description: (null)
       <AtkAction>
       action 0 name: click
-    Column 2
+    unnamed-GtkButtonAccessible-1
       "table column header"
       parent: tree1
       index: 1
@@ -174,37 +81,6 @@ window1
       <AtkComponent>
       layer: widget
       alpha: 1
-      <AtkText>
-      text: Column 2
-      character count: 8
-      caret offset: 0
-      default attributes: bg-color: <omitted>
-                          bg-full-height: 0
-                          bg-stipple: false
-                          direction: <omitted>
-                          editable: false
-                          family-name: <omitted>
-                          fg-color: <omitted>
-                          fg-stipple: false
-                          indent: 0
-                          invisible: false
-                          justification: left
-                          language: <omitted>
-                          left-margin: 0
-                          pixels-above-lines: 0
-                          pixels-below-lines: 0
-                          pixels-inside-wrap: 0
-                          right-margin: 0
-                          rise: 0
-                          scale: 1
-                          size: <omitted>
-                          stretch: <omitted>
-                          strikethrough: false
-                          style: <omitted>
-                          underline: none
-                          variant: <omitted>
-                          weight: <omitted>
-                          wrap-mode: word
       <AtkImage>
       image size: -1 x -1
       image description: (null)



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]