diff options
author | Emmanuele Bassi <ebassi@gnome.org> | 2020-06-16 16:41:59 +0100 |
---|---|---|
committer | Emmanuele Bassi <ebassi@gnome.org> | 2020-07-26 20:31:14 +0100 |
commit | c63087a5631e72cd1c45bdc5a41bf605195be64c (patch) | |
tree | 5336167dacb3d88a5d23220d0846f7847605590c /testsuite | |
parent | ea0fc7619ddd0ad20cd7c83e3e8c8672004c20c9 (diff) | |
download | gtk+-c63087a5631e72cd1c45bdc5a41bf605195be64c.tar.gz |
Remove ATK
To build a better world sometimes means having to tear the old one down.
-- Alexander Pierce, "Captain America: The Winter Soldier"
ATK served us well for nearly 20 years, but the world has changed, and
GTK has changed with it. Now ATK is mostly a hindrance towards improving
the accessibility stack:
- it maps to a very specific implementation, AT-SPI, which is Linux and
Unix specific
- it requires implementing the same functionality in three different
layers of the stack: AT-SPI, ATK, and GTK
- only GTK uses it; every other Linux and Unix toolkit and application
talks to AT-SPI directly, including assistive technologies
Sadly, we cannot incrementally port GTK to a new accessibility stack;
since ATK insulates us entirely from the underlying implementation, we
cannot replace it piecemeal. Instead, we're going to remove everything
and then incrementally build on a clean slate:
- add an "accessible" interface, implemented by GTK objects directly,
which describe the accessible role and state changes for every UI
element
- add an "assistive technology context" to proxy a native accessibility
API, and assign it to every widget
- implement the AT context depending on the platform
For more information, see: https://gitlab.gnome.org/GNOME/gtk/-/issues/2833
Diffstat (limited to 'testsuite')
111 files changed, 4 insertions, 10431 deletions
diff --git a/testsuite/a11y/README b/testsuite/a11y/README deleted file mode 100644 index 434b0d7d2d..0000000000 --- a/testsuite/a11y/README +++ /dev/null @@ -1,18 +0,0 @@ -accessibility-dump is a test runner that can do tests of static -accessibility information. Run it like this: - -./accessibility-dump [OPTIONS] TESTFILE [TESTFILES...] - -where TESTFILE is a GtkBuilder .ui file. accessibility-dump creates -a textual dump of the accessibility information for the created -widget hierarchy and compares it to a preexisting .txt file. - -To create an initial dump, you can use the --generate option with -a single .ui file. You should carefully inspect the output before -blessing it as the official .txt to compare against. - -To find out details about a failure, you can use the --verbose -option to see differences between expected and actual output. - -When run without any arguments, all the .ui files in the current -directory are tested. diff --git a/testsuite/a11y/about.txt b/testsuite/a11y/about.txt deleted file mode 100644 index b86b0fa9f1..0000000000 --- a/testsuite/a11y/about.txt +++ /dev/null @@ -1,434 +0,0 @@ -window1 - "dialog" - index: 0 - name: About FancyPants - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - ___object_1___ - "filler" - parent: window1 - index: 0 - state: enabled sensitive showing vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - ___object_1___ - "filler" - parent: ___object_1___ - index: 0 - state: enabled sensitive showing vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - box - "filler" - parent: ___object_1___ - index: 0 - state: enabled sensitive showing vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - logo_image - "icon" - parent: box - index: 0 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: 0 x 0 - image description: (null) - name_label - "label" - parent: box - index: 1 - name: FancyPants - state: enabled focusable focused multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: FancyPants - character count: 10 - 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: center - 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 - <AtkHypertext> - stack - "panel" - parent: box - index: 2 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - page_vbox - "filler" - parent: stack - index: 0 - state: enabled sensitive showing vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - version_label - "label" - parent: page_vbox - index: 0 - name: 0.99 - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: 0.99 - 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: center - 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 - <AtkHypertext> - comments_label - "label" - parent: page_vbox - index: 1 - name: comments - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: comments - character count: 8 - 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: center - 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 - <AtkHypertext> - website_label - "label" - parent: page_vbox - index: 2 - name: Website - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Website - character count: 7 - 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 - <AtkHypertext> - <AtkHyperlink> - start index: 0 - end index: 7 - anchors: http://www.gtk.org - unnamed-GtkLabelAccessibleLinkImpl-0 - "link" - parent: website_label - state: enabled focusable focused multi-line sensitive showing visible - <AtkHyperlinkImpl> - <AtkHyperlink> - start index: 0 - end index: 7 - anchors: http://www.gtk.org - copyright_label - "label" - parent: page_vbox - index: 3 - name: no comments - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: no comments - character count: 11 - 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: center - 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 - <AtkHypertext> - license_label - "label" - parent: page_vbox - index: 4 - name: This program comes with absolutely no warranty. -See the GNU General Public License, version 3 or later for details. - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: This program comes with absolutely no warranty. -See the GNU General Public License, version 3 or later for details. - character count: 115 - caret offset: 56 - default attributes: bg-color: <omitted> - bg-full-height: 0 - direction: <omitted> - editable: false - family-name: <omitted> - fg-color: <omitted> - indent: 0 - invisible: false - justification: center - 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 - <AtkHypertext> - <AtkHyperlink> - start index: 56 - end index: 102 - anchors: https://www.gnu.org/licenses/gpl-3.0.html - unnamed-GtkLabelAccessibleLinkImpl-1 - "link" - parent: license_label - state: enabled focusable focused multi-line sensitive showing visible - <AtkHyperlinkImpl> - <AtkHyperlink> - start index: 56 - end index: 102 - anchors: https://www.gnu.org/licenses/gpl-3.0.html - action_box - "filler" - parent: ___object_1___ - index: 1 - state: enabled horizontal sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - action_area - "filler" - parent: action_box - index: 0 - state: enabled horizontal sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - headerbar1 - "panel" - parent: window1 - index: 1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - stack_switcher - "filler" - parent: headerbar1 - index: 0 - state: enabled focusable sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkToggleButtonAccessible-2 - "toggle button" - parent: stack_switcher - index: 0 - name: About - state: checked enabled focusable sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - unnamed-GtkToggleButtonAccessible-3 - "toggle button" - parent: stack_switcher - index: 1 - name: Credits - state: enabled focusable sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - unnamed-GtkToggleButtonAccessible-4 - "toggle button" - parent: stack_switcher - index: 2 - name: License - state: enabled focusable sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - unnamed-GtkToggleButtonAccessible-5 - "toggle button" - parent: stack_switcher - index: 3 - name: System - state: enabled focusable sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button diff --git a/testsuite/a11y/about.ui b/testsuite/a11y/about.ui deleted file mode 100644 index baf99f360b..0000000000 --- a/testsuite/a11y/about.ui +++ /dev/null @@ -1,12 +0,0 @@ - -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkAboutDialog" id="window1"> - <property name="program-name">FancyPants</property> - <property name="version">0.99</property> - <property name="copyright">no comments</property> - <property name="comments">comments</property> - <property name="license-type">gpl-3-0</property> - <property name="website">http://www.gtk.org</property> - </object> -</interface> diff --git a/testsuite/a11y/accessibile-name.txt b/testsuite/a11y/accessibile-name.txt deleted file mode 100644 index 27d90762b0..0000000000 --- a/testsuite/a11y/accessibile-name.txt +++ /dev/null @@ -1,44 +0,0 @@ -window1 - "window" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gail - button1 - "push button" - parent: window1 - index: 0 - name: Accessible name - state: enabled focusable sensitive showing visible - toolkit: gail - text: Hello World! - character count: 12 - caret offset: 0 - default attributes: left-margin: 0 - right-margin: 0 - indent: 0 - invisible: false - editable: false - pixels-above-lines: 0 - pixels-below-lines: 0 - pixels-inside-wrap: 0 - bg-full-height: 0 - scale: 1 - rise: 0 - underline: none - strikethrough: false - bg-stipple: false - fg-stipple: false - fg-color: <omitted> - bg-color: <omitted> - wrap-mode: word - justification: left - size: <omitted> - weight: <omitted> - family-name: <omitted> - stretch: <omitted> - variant: <omitted> - style: <omitted> - language: <omitted> - direction: <omitted> - image size: -1 x -1 - image description: (null) diff --git a/testsuite/a11y/accessibility-dump.c b/testsuite/a11y/accessibility-dump.c deleted file mode 100644 index 748cbcf106..0000000000 --- a/testsuite/a11y/accessibility-dump.c +++ /dev/null @@ -1,1003 +0,0 @@ -/* - * Copyright (C) 2011 Red Hat Inc. - * - * Author: - * Benjamin Otte <otte@redhat.com> - * - * 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, see <http://www.gnu.org/licenses/>. - */ - -#include "config.h" - -#include <locale.h> -#include <string.h> -#include <glib/gstdio.h> -#include <gtk/gtk.h> - -#ifdef G_OS_WIN32 -# include <io.h> -#endif - -#define DEPTH_INCREMENT 2 - -static char * -get_test_file (const char *test_file, - const char *extension, - gboolean must_exist) -{ - GString *file = g_string_new (NULL); - - if (g_str_has_suffix (test_file, ".ui")) - g_string_append_len (file, test_file, strlen (test_file) - strlen (".ui")); - else - g_string_append (file, test_file); - - g_string_append (file, extension); - - if (must_exist && - !g_file_test (file->str, G_FILE_TEST_EXISTS)) - { - g_string_free (file, TRUE); - return NULL; - } - - return g_string_free (file, FALSE); -} - -static char * -diff_with_file (const char *file1, - char *text, - gssize len, - GError **error) -{ - const char *command[] = { "diff", "-u", file1, NULL, NULL }; - char *diff, *tmpfile; - int fd; - - diff = NULL; - - if (len < 0) - len = strlen (text); - - /* write the text buffer to a temporary file */ - fd = g_file_open_tmp (NULL, &tmpfile, error); - if (fd < 0) - return NULL; - - if (write (fd, text, len) != (int) len) - { - close (fd); - g_set_error (error, - G_FILE_ERROR, G_FILE_ERROR_FAILED, - "Could not write data to temporary file '%s'", tmpfile); - goto done; - } - close (fd); - command[3] = tmpfile; - - /* run diff command */ - g_spawn_sync (NULL, - (char **) command, - NULL, - G_SPAWN_SEARCH_PATH, - NULL, NULL, - &diff, - NULL, NULL, - error); - -done: - g_unlink (tmpfile); - g_free (tmpfile); - - return diff; -} - -static int unnamed_object_count; - -static void -setup_test (void) -{ - unnamed_object_count = 0; -} - -static const char * -get_name (AtkObject *accessible) -{ - char *name; - - name = g_object_get_data (G_OBJECT (accessible), "gtk-accessibility-dump-name"); - if (name) - return name; - - if (GTK_IS_ACCESSIBLE (accessible)) - { - GtkWidget *widget = gtk_accessible_get_widget (GTK_ACCESSIBLE (accessible)); - - name = g_strdup (gtk_buildable_get_name (GTK_BUILDABLE (widget))); - } - - if (name == NULL && ATK_IS_TEXT (accessible)) - { - name = atk_text_get_text (ATK_TEXT (accessible), 0, -1); - } - - if (name == NULL) - { - /* Generate a unique, repeatable name */ - name = g_strdup_printf ("unnamed-%s-%d", G_OBJECT_TYPE_NAME (accessible), unnamed_object_count++); - } - - g_object_set_data_full (G_OBJECT (accessible), "gtk-accessibility-dump-name", name, g_free); - return name; -} - -static void -dump_relation (GString *string, - guint depth, - AtkRelation *relation) -{ - GPtrArray *targets; - const char *name; - guint i; - - targets = atk_relation_get_target (relation); - if (targets == NULL || targets->len == 0) - return; - - name = atk_relation_type_get_name (atk_relation_get_relation_type (relation)); - g_string_append_printf (string, "%*s%s: %s\n", depth, "", name, get_name (g_ptr_array_index (targets, 0))); - depth += strlen (name) + 2; - - for (i = 1; i < targets->len; i++) - { - g_string_append_printf (string, "%*s%s\n", depth, "", get_name (g_ptr_array_index (targets, i))); - } -} - -static void -dump_relation_set (GString *string, - guint depth, - AtkRelationSet *set) -{ - guint i; - - if (set == NULL) - return; - - for (i = 0; i < atk_relation_set_get_n_relations (set); i++) - { - AtkRelation *relation; - - relation = atk_relation_set_get_relation (set, i); - - dump_relation (string, depth, relation); - } - - g_object_unref (set); -} - -static void -dump_state_set (AtkObject *accessible, - GString *string, - guint depth, - AtkStateSet *set) -{ - guint i; - - if (set == NULL) - return; - - if (!atk_state_set_is_empty (set)) - { - g_string_append_printf (string, "%*sstate:", depth, ""); - for (i = 0; i < ATK_STATE_LAST_DEFINED; i++) - { - /* The toplevel active state depends on focus interaction with the WM, so lets ignore it */ - if (ATK_IS_WINDOW (accessible) && i == ATK_STATE_ACTIVE) - continue; - - if (atk_state_set_contains_state (set, i)) - g_string_append_printf (string, " %s", atk_state_type_get_name (i)); - } - g_string_append_c (string, '\n'); - } - - g_object_unref (set); -} - -static void -dump_attribute (GString *string, - guint depth, - AtkAttribute *attribute) -{ - g_string_append_printf (string, "%*s%s: %s\n", depth, "", attribute->name, attribute->value); -} - -static void -dump_attribute_set (GString *string, - guint depth, - AtkAttributeSet *set) -{ - GSList *l; - AtkAttribute *attribute; - - for (l = set; l; l = l->next) - { - attribute = l->data; - - dump_attribute (string, depth, attribute); - } -} - -static int -compare_attr (gconstpointer a, gconstpointer b) -{ - const AtkAttribute *aattr = a; - const AtkAttribute *battr = b; - - return strcmp (aattr->name, battr->name); -} - -static void -dump_text_attributes (GString *string, - int depth, - const char *name, - AtkAttributeSet *attributes) -{ - GSList *l; - AtkAttribute *attr; - const char *value; - - if (attributes == NULL) - return; - - attributes = g_slist_sort (attributes, compare_attr); - - for (l = attributes; l; l = l->next) - { - attr = l->data; - /* don't dump values that depend on the environment or too - * closely on the exact theme pixels. - */ - if (strcmp (attr->name, "family-name") == 0 || - strcmp (attr->name, "size") == 0 || - strcmp (attr->name, "weight") == 0 || - strcmp (attr->name, "stretch") == 0 || - strcmp (attr->name, "variant") == 0 || - strcmp (attr->name, "style") == 0 || - strcmp (attr->name, "language") == 0 || - strcmp (attr->name, "fg-color") == 0 || - strcmp (attr->name, "bg-color") == 0 || - strcmp (attr->name, "direction") == 0) - value = "<omitted>"; - else - value = attr->value; - - if (name) - { - /* first time this loop is run */ - g_string_append_printf (string, "%*s%s: %s: %s\n", depth, "", name, attr->name, value); - depth += strlen (name) + 2; - name = NULL; - } - else - { - /* every other time */ - g_string_append_printf (string, "%*s%s: %s\n", depth, "", attr->name, value); - } - } - - atk_attribute_set_free (attributes); -} - -static const char * -layer_name (AtkLayer layer) -{ - GEnumClass *class; - GEnumValue *value; - - class = g_type_class_ref (atk_layer_get_type ()); - value = g_enum_get_value (class, layer); - g_type_class_unref (class); - - return value->value_nick; -} - -static void -dump_atk_component (AtkComponent *atk_component, - guint depth, - GString *string) -{ - AtkLayer layer; - - g_string_append_printf (string, "%*s<AtkComponent>\n", depth, ""); - - layer = atk_component_get_layer (atk_component); - g_string_append_printf (string, "%*slayer: %s\n", depth, "", layer_name (layer)); - - g_string_append_printf (string, "%*salpha: %g\n", depth, "", atk_component_get_alpha (atk_component)); -} - -static void -dump_atk_text (AtkText *atk_text, - guint depth, - GString *string) -{ - char *text; - int i, start, end; - - g_string_append_printf (string, "%*s<AtkText>\n", depth, ""); - - text = atk_text_get_text (atk_text, 0, -1); - g_string_append_printf (string, "%*stext: %s\n", depth, "", text); - g_free (text); - - g_string_append_printf (string, "%*scharacter count: %d\n", depth, "", atk_text_get_character_count (atk_text)); - - g_string_append_printf (string, "%*scaret offset: %d\n", depth, "", atk_text_get_caret_offset (atk_text)); - - for (i = 0; i < atk_text_get_n_selections (atk_text); i++) - { - text = atk_text_get_selection (atk_text, i, &start, &end); - if (text) - g_string_append_printf (string, "%*sselection %d: (%d, %d) %s\n", depth, "", i, start, end, text); - g_free (text); - } - - dump_text_attributes (string, depth, "default attributes", atk_text_get_default_attributes (atk_text)); -} - -static void -dump_atk_image (AtkImage *atk_image, - guint depth, - GString *string) -{ - int width, height; - - g_string_append_printf (string, "%*s<AtkImage>\n", depth, ""); - - atk_image_get_image_size (atk_image, &width, &height); - g_string_append_printf (string, "%*simage size: %d x %d\n", depth, "", width, height); - - g_string_append_printf (string, "%*simage description: %s\n", depth, "", atk_image_get_image_description (atk_image)); -} - -static void -dump_atk_action (AtkAction *atk_action, - guint depth, - GString *string) -{ - int i; - - g_string_append_printf (string, "%*s<AtkAction>\n", depth, ""); - - for (i = 0; i < atk_action_get_n_actions (atk_action); i++) - { - if (atk_action_get_name (atk_action, i)) - g_string_append_printf (string, "%*saction %d name: %s\n", depth, "", i, atk_action_get_name (atk_action, i)); - if (atk_action_get_description (atk_action, i)) - g_string_append_printf (string, "%*saction %d description: %s\n", depth, "", i, atk_action_get_description (atk_action, i)); - if (atk_action_get_keybinding (atk_action, i)) - g_string_append_printf (string, "%*saction %d keybinding: %s\n", depth, "", i, atk_action_get_keybinding (atk_action, i)); - } -} - -static void -dump_atk_selection (AtkSelection *atk_selection, - guint depth, - GString *string) -{ - guint n_selections, n_counted_selections; - int i; - - g_string_append_printf (string, "%*s<AtkSelection>\n", depth, ""); - - n_selections = atk_selection_get_selection_count (atk_selection); - - n_counted_selections = 0; - for (i = 0; i < atk_object_get_n_accessible_children (ATK_OBJECT (atk_selection)); i++) - { - if (atk_selection_is_child_selected (atk_selection, i)) - { - AtkObject *object = atk_object_ref_accessible_child (ATK_OBJECT (atk_selection), i); - - g_assert (object); - - if (n_counted_selections == 0) - { - g_string_append_printf (string, "%*sselected children: %s\n", depth, "", get_name (object)); - depth += strlen ("selected children: "); - } - else - g_string_append_printf (string, "%*s%s\n", depth, "", get_name (object)); - n_counted_selections++; - } - } - - g_assert_cmpint (n_selections, ==, n_counted_selections); - g_assert_cmpint (n_selections, ==, atk_selection_get_selection_count (atk_selection)); -} - -static void -dump_atk_value (AtkValue *atk_value, - guint depth, - GString *string) -{ - AtkRange *range; - double value; - char *text; - - value = 0.0; - text = NULL; - - atk_value_get_value_and_text (atk_value, &value, &text); - range = atk_value_get_range (atk_value); - - g_string_append_printf (string, "%*s<AtkValue>\n", depth, ""); - - if (range) - { - g_string_append_printf (string, "%*sminimum value: %f\n", depth, "", atk_range_get_lower_limit (range)); - - g_string_append_printf (string, "%*smaximum value: %f\n", depth, "", atk_range_get_upper_limit (range)); - - atk_range_free (range); - } - - if (text) - { - g_string_append_printf (string, "%*scurrent value: %f %s\n", depth, "", value, text); - g_free (text); - } - else - g_string_append_printf (string, "%*scurrent value: %f\n", depth, "", value); - - /* Don't dump minimum increment; it changes too much in response to - * theme changes. - * https://bugzilla.gnome.org/show_bug.cgi?id=704747 - */ -} - -static void -dump_atk_hyperlink (AtkHyperlink *link, - guint depth, - GString *string) -{ - int i; - - g_string_append_printf (string, "%*s<AtkHyperlink>\n", depth, ""); - g_string_append_printf (string, "%*sstart index: %d\n", depth, "", atk_hyperlink_get_start_index (link)); - g_string_append_printf (string, "%*send index: %d\n", depth, "", atk_hyperlink_get_end_index (link)); - g_string_append_printf (string, "%*sanchors:", depth, ""); - - for (i = 0; i < atk_hyperlink_get_n_anchors (link); i++) - { - char *uri; - - uri = atk_hyperlink_get_uri (link, i); - g_string_append_printf (string, " %s", uri); - g_free (uri); - } - - g_string_append_c (string, '\n'); -} - -static void -dump_atk_hyperlink_impl (AtkHyperlinkImpl *impl, - guint depth, - GString *string) -{ - AtkHyperlink *link; - - g_string_append_printf (string, "%*s<AtkHyperlinkImpl>\n", depth, ""); - - link = atk_hyperlink_impl_get_hyperlink (impl); - dump_atk_hyperlink (link, depth + DEPTH_INCREMENT, string); - g_object_unref (link); -} - -static void -dump_atk_hypertext (AtkHypertext *hypertext, - guint depth, - GString *string) -{ - int i; - AtkHyperlink *link; - - g_string_append_printf (string, "%*s<AtkHypertext>\n", depth, ""); - - for (i = 0; i < atk_hypertext_get_n_links (hypertext); i++) - { - link = atk_hypertext_get_link (hypertext, i); - dump_atk_hyperlink (link, depth + DEPTH_INCREMENT, string); - } -} - -static void -dump_atk_streamable_content (AtkStreamableContent *content, - guint depth, - GString *string) -{ - int i; - - g_string_append_printf (string, "%*s<AtkStreamableContent>\n", depth, ""); - - g_string_append_printf (string, "%*smime types:", depth, ""); - for (i = 0; i < atk_streamable_content_get_n_mime_types (content); i++) - g_string_append_printf (string, " %s", atk_streamable_content_get_mime_type (content, i)); - g_string_append_c (string, '\n'); -} - -static void -dump_atk_table (AtkTable *table, - guint depth, - GString *string) -{ - int *selected; - int n_selected; - int i, j; - AtkObject *obj; - const char *desc; - - g_string_append_printf (string, "%*s<AtkTable>\n", depth, ""); - - obj = atk_table_get_summary (table); - if (obj) - g_string_append_printf (string, "%*ssummary: %s\n", depth, "", get_name (obj)); - - obj = atk_table_get_caption (table); - if (obj) - g_string_append_printf (string, "%*scaption: %s\n", depth, "", get_name (obj)); - - g_string_append_printf (string, "%*srows: %d\n", depth, "", atk_table_get_n_rows (table)); - g_string_append_printf (string, "%*scolumns: %d\n", depth, "", atk_table_get_n_columns (table)); - - selected = NULL; - n_selected = atk_table_get_selected_rows (table, &selected); - if (n_selected > 0) - { - g_string_append_printf (string, "%*sselected rows:", depth, ""); - for (i = 0; i < n_selected; i++) - g_string_append_printf (string, " %d", selected[i]); - g_string_append_c (string, '\n'); - } - g_free (selected); - - selected = NULL; - n_selected = atk_table_get_selected_columns (table, &selected); - if (n_selected > 0) - { - g_string_append_printf (string, "%*sselected columns:", depth, ""); - for (i = 0; i < n_selected; i++) - g_string_append_printf (string, " %d", selected[i]); - g_string_append_c (string, '\n'); - } - g_free (selected); - - - for (i = 0; i < atk_table_get_n_columns (table); i++) - { - desc = atk_table_get_column_description (table, i); - if (desc) - g_string_append_printf (string, "%*scolumn %d description: %s\n", depth, "", i, desc); - obj = atk_table_get_column_header (table, i); - if (obj) - g_string_append_printf (string, "%*scolumn %d header: %s\n", depth, "", i, get_name (obj)); - } - - for (i = 0; i < atk_table_get_n_rows (table); i++) - { - desc = atk_table_get_row_description (table, i); - if (desc) - g_string_append_printf (string, "%*srow %d description: %s\n", depth, "", i, desc); - obj = atk_table_get_row_header (table, i); - if (obj) - g_string_append_printf (string, "%*srow %d header: %s\n", depth, "", i, get_name (obj)); - } - - g_string_append_printf (string, "%*stable indexes:\n", depth, ""); - for (i = 0; i < atk_table_get_n_rows (table); i++) - { - g_string_append_printf (string, "%*s", depth + DEPTH_INCREMENT, ""); - for (j = 0; j < atk_table_get_n_columns (table); j++) - { -G_GNUC_BEGIN_IGNORE_DEPRECATIONS - int id = atk_table_get_index_at (table, i, j); - - obj = atk_object_ref_accessible_child (ATK_OBJECT (table), id); - if (j > 0) - g_string_append (string, " "); - - g_string_append_printf (string, "%s%s%s", - atk_table_get_row_at_index (table, id) == i ? "✓" : "âš ", - atk_table_get_column_at_index (table, id) == j ? "✓" : "âš ", - get_name (obj)); -G_GNUC_END_IGNORE_DEPRECATIONS - } - g_string_append (string, "\n"); - } -} - -static void -dump_atk_table_cell (AtkTableCell *table_cell, - guint depth, - GString *string) -{ - int i; - AtkObject *obj; - GPtrArray *cells; - int row = -1, column = -1; - - g_string_append_printf (string, "%*s<AtkTableCell>\n", depth, ""); - - obj = atk_table_cell_get_table (table_cell); - if (obj) - g_string_append_printf (string, "%*stable: %s\n", depth, "", get_name (obj)); - - cells = atk_table_cell_get_column_header_cells (table_cell); - if (cells) - { - for (i = 0; i < cells->len; i++) - { - obj = g_ptr_array_index (cells, i); - if (obj) - g_string_append_printf (string, "%*scolumn-header[%d]: %s\n", depth, "", i, get_name (obj)); - } - g_ptr_array_free (cells, TRUE); - } - - cells = atk_table_cell_get_row_header_cells (table_cell); - if (cells) - { - for (i = 0; i < cells->len; i++) - { - obj = g_ptr_array_index (cells, i); - if (obj) - g_string_append_printf (string, "%*srow-header[%d]: %s\n", depth, "", i, get_name (obj)); - } - g_ptr_array_free (cells, TRUE); - } - - g_string_append_printf (string, "%*scolumn-span: %d\n", depth, "", atk_table_cell_get_column_span (table_cell)); - g_string_append_printf (string, "%*srow-span: %d\n", depth, "", atk_table_cell_get_row_span (table_cell)); - if (atk_table_cell_get_position (table_cell, &row, &column)) - { - g_string_append_printf (string, "%*sposition: %d %d\n", depth, "", row, column); - } -} - -static void -dump_accessible (AtkObject *accessible, - guint depth, - GString *string) -{ - guint i; - - g_string_append_printf (string, "%*s%s\n", depth, "", get_name (accessible)); - depth += DEPTH_INCREMENT; - - g_string_append_printf (string, "%*s\"%s\"\n", depth, "", atk_role_get_name (atk_object_get_role (accessible))); - if (GTK_IS_ACCESSIBLE (atk_object_get_parent (accessible))) - g_string_append_printf (string, "%*sparent: %s\n", depth, "", get_name (atk_object_get_parent (accessible))); - if (atk_object_get_index_in_parent (accessible) != -1) - g_string_append_printf (string, "%*sindex: %d\n", depth, "", atk_object_get_index_in_parent (accessible)); - if (atk_object_get_name (accessible)) - g_string_append_printf (string, "%*sname: %s\n", depth, "", atk_object_get_name (accessible)); - if (atk_object_get_description (accessible)) - g_string_append_printf (string, "%*sdescription: %s\n", depth, "", atk_object_get_description (accessible)); - dump_relation_set (string, depth, atk_object_ref_relation_set (accessible)); - dump_state_set (accessible, string, depth, atk_object_ref_state_set (accessible)); - dump_attribute_set (string, depth, atk_object_get_attributes (accessible)); - - if (ATK_IS_COMPONENT (accessible)) - dump_atk_component (ATK_COMPONENT (accessible), depth, string); - - if (ATK_IS_TEXT (accessible)) - dump_atk_text (ATK_TEXT (accessible), depth, string); - - if (ATK_IS_IMAGE (accessible)) - dump_atk_image (ATK_IMAGE (accessible), depth, string); - - if (ATK_IS_ACTION (accessible)) - dump_atk_action (ATK_ACTION (accessible), depth, string); - - if (ATK_IS_SELECTION (accessible)) - dump_atk_selection (ATK_SELECTION (accessible), depth, string); - - if (ATK_IS_VALUE (accessible)) - dump_atk_value (ATK_VALUE (accessible), depth, string); - - if (ATK_IS_HYPERLINK_IMPL (accessible)) - dump_atk_hyperlink_impl (ATK_HYPERLINK_IMPL (accessible), depth, string); - - if (ATK_IS_HYPERTEXT (accessible)) - dump_atk_hypertext (ATK_HYPERTEXT (accessible), depth, string); - - if (ATK_IS_STREAMABLE_CONTENT (accessible)) - dump_atk_streamable_content (ATK_STREAMABLE_CONTENT (accessible), depth, string); - - if (ATK_IS_TABLE (accessible)) - dump_atk_table (ATK_TABLE (accessible), depth, string); - - if (ATK_IS_TABLE_CELL (accessible)) - dump_atk_table_cell (ATK_TABLE_CELL (accessible), depth, string); - - for (i = 0; i < atk_object_get_n_accessible_children (accessible); i++) - { - AtkObject *child = atk_object_ref_accessible_child (accessible, i); - dump_accessible (child, depth, string); - g_object_unref (child); - } -} - -static GtkWidget * -builder_get_toplevel (GtkBuilder *builder) -{ - GSList *list, *walk; - GtkWidget *window = NULL; - - list = gtk_builder_get_objects (builder); - for (walk = list; walk; walk = walk->next) - { - if (GTK_IS_WINDOW (walk->data) && - gtk_widget_get_parent (walk->data) == NULL) - { - window = walk->data; - break; - } - } - - g_slist_free (list); - - return window; -} - -static void -dump_ui_file (const char *ui_file, - GString *string) -{ - GtkWidget *window; - GtkBuilder *builder; - GError *error = NULL; - - builder = gtk_builder_new (); - gtk_builder_add_from_file (builder, ui_file, &error); - g_assert_no_error (error); - window = builder_get_toplevel (builder); - g_object_unref (builder); - g_assert (window); - - gtk_widget_show (window); - - dump_accessible (gtk_widget_get_accessible (window), 0, string); - gtk_window_destroy (GTK_WINDOW (window)); -} - -static void -dump_to_stdout (GFile *file) -{ - char *ui_file; - GString *dump; - - ui_file = g_file_get_path (file); - dump = g_string_new (""); - - dump_ui_file (ui_file, dump); - g_print ("%s", dump->str); - - g_string_free (dump, TRUE); - g_free (ui_file); -} - -static void -test_ui_file (GFile *file) -{ - char *ui_file, *a11y_file; - GString *dump; - GError *error = NULL; - - ui_file = g_file_get_path (file); - a11y_file = get_test_file (ui_file, ".txt", TRUE); - dump = g_string_new (""); - - dump_ui_file (ui_file, dump); - - if (a11y_file) - { - char *diff = diff_with_file (a11y_file, dump->str, dump->len, &error); - g_assert_no_error (error); - - if (diff && diff[0]) - { - g_printerr ("Contents don't match expected contents:\n%s", diff); - g_test_fail (); - g_free (diff); - } - } - else if (dump->str[0]) - { - g_test_message ("Expected a reference file:\n%s", dump->str); - g_test_fail (); - } - - g_string_free (dump, TRUE); - g_free (a11y_file); - g_free (ui_file); -} - -static void -add_test_for_file (GFile *file) -{ - g_test_add_vtable (g_file_get_path (file), - 0, - g_object_ref (file), - (GTestFixtureFunc) setup_test, - (GTestFixtureFunc) test_ui_file, - (GTestFixtureFunc) g_object_unref); -} - -static int -compare_files (gconstpointer a, gconstpointer b) -{ - GFile *file1 = G_FILE (a); - GFile *file2 = G_FILE (b); - char *path1, *path2; - int result; - - path1 = g_file_get_path (file1); - path2 = g_file_get_path (file2); - - result = strcmp (path1, path2); - - g_free (path1); - g_free (path2); - - return result; -} - -static void -add_tests_for_files_in_directory (GFile *dir) -{ - GFileEnumerator *enumerator; - GFileInfo *info; - GList *files; - GError *error = NULL; - - enumerator = g_file_enumerate_children (dir, G_FILE_ATTRIBUTE_STANDARD_NAME, 0, NULL, &error); - g_assert_no_error (error); - files = NULL; - - while ((info = g_file_enumerator_next_file (enumerator, NULL, &error))) - { - const char *filename; - - filename = g_file_info_get_name (info); - - if (!g_str_has_suffix (filename, ".ui")) - { - g_object_unref (info); - continue; - } - - files = g_list_prepend (files, g_file_get_child (dir, filename)); - - g_object_unref (info); - } - - g_assert_no_error (error); - g_object_unref (enumerator); - - files = g_list_sort (files, compare_files); - g_list_foreach (files, (GFunc) add_test_for_file, NULL); - g_list_free_full (files, g_object_unref); -} - -static char *arg_base_dir = NULL; - -static const GOptionEntry test_args[] = { - { "directory", 'd', 0, G_OPTION_ARG_FILENAME, &arg_base_dir, - "Directory to run tests from", "DIR" }, - { NULL } -}; - -static gboolean -parse_command_line (int *argc, char ***argv) -{ - GError *error = NULL; - GOptionContext *context; - - context = g_option_context_new ("- run GTK accessibility tests"); - g_option_context_add_main_entries (context, test_args, NULL); - g_option_context_set_ignore_unknown_options (context, TRUE); - - if (!g_option_context_parse (context, argc, argv, &error)) - { - g_print ("option parsing failed: %s\n", error->message); - return FALSE; - } - - return TRUE; -} - -static void -fix_settings (void) -{ - /* Some settings can affect the output of the accessibility tests, - * so we take some steps to isolate us from the ambient environment. - */ - - g_object_set (gtk_settings_get_default (), - "gtk-dialogs-use-header", TRUE, - NULL); -} - -int -main (int argc, char **argv) -{ - if (!parse_command_line (&argc, &argv)) - return 1; - - fix_settings (); - - if (argc == 3 && strcmp (argv[1], "--generate") == 0) - { - GFile *file = g_file_new_for_commandline_arg (argv[2]); - - gtk_init (); - - dump_to_stdout (file); - g_object_unref (file); - - return 0; - } - - gtk_test_init (&argc, &argv); - - /* gtk_test_init does not call setlocale(), so do it ourselves, - * since running in the C locale breaks some our fancy - * utf8 output. - */ - setlocale (LC_ALL, "en_US.utf8"); - - if (argc < 2) - { - const char *basedir; - GFile *dir; - - if (arg_base_dir) - basedir = arg_base_dir; - else - basedir = g_test_get_dir (G_TEST_DIST); - dir = g_file_new_for_path (basedir); - add_tests_for_files_in_directory (dir); - - g_object_unref (dir); - } - else - { - guint i; - - for (i = 1; i < argc; i++) - { - GFile *file = g_file_new_for_commandline_arg (argv[i]); - - add_test_for_file (file); - - g_object_unref (file); - } - } - - return g_test_run (); -} - diff --git a/testsuite/a11y/accessible-name.txt b/testsuite/a11y/accessible-name.txt deleted file mode 100644 index d1a78b61c4..0000000000 --- a/testsuite/a11y/accessible-name.txt +++ /dev/null @@ -1,32 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button1 - "push button" - parent: window1 - index: 0 - name: Accessible name - state: enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button diff --git a/testsuite/a11y/accessible-name.ui b/testsuite/a11y/accessible-name.ui deleted file mode 100644 index a71bf44cc8..0000000000 --- a/testsuite/a11y/accessible-name.ui +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkButton" id="button1"> - <property name="label" translatable="yes">Hello World!</property> - <property name="visible">True</property> - <property name="receives_default">True</property> - <child internal-child="accessible"> - <object class="AtkObject" id="button1-accessible"> - <property name="accessible-name" translatable="yes">Accessible name</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/actionbar.txt b/testsuite/a11y/actionbar.txt deleted file mode 100644 index 0fa7c3a717..0000000000 --- a/testsuite/a11y/actionbar.txt +++ /dev/null @@ -1,105 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - actionbar - "panel" - parent: window1 - index: 0 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button1 - "push button" - parent: unnamed-GtkContainerAccessible-1 - index: 0 - name: Start 1 - state: enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button2 - "push button" - parent: unnamed-GtkContainerAccessible-1 - index: 1 - name: Start 2 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button5 - "push button" - parent: unnamed-GtkWidgetAccessible-2 - index: 1 - name: Center - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button4 - "push button" - parent: unnamed-GtkContainerAccessible-3 - index: 0 - name: End 2 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button3 - "push button" - parent: unnamed-GtkContainerAccessible-3 - index: 1 - name: End 1 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button diff --git a/testsuite/a11y/actionbar.ui b/testsuite/a11y/actionbar.ui deleted file mode 100644 index fdf23e3b3d..0000000000 --- a/testsuite/a11y/actionbar.ui +++ /dev/null @@ -1,33 +0,0 @@ -<interface> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkActionBar" id="actionbar"> - <child type="start"> - <object class="GtkButton" id="button1"> - <property name="label">Start 1</property> - </object> - </child> - <child type="start"> - <object class="GtkButton" id="button2"> - <property name="label">Start 2</property> - </object> - </child> - <child type="end"> - <object class="GtkButton" id="button3"> - <property name="label">End 1</property> - </object> - </child> - <child type="end"> - <object class="GtkButton" id="button4"> - <property name="label">End 2</property> - </object> - </child> - <child type="center"> - <object class="GtkButton" id="button5"> - <property name="label">Center</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/assistant.txt b/testsuite/a11y/assistant.txt deleted file mode 100644 index 5daab74117..0000000000 --- a/testsuite/a11y/assistant.txt +++ /dev/null @@ -1,161 +0,0 @@ -window1 - "panel" - index: 0 - name: Page 1 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button1 - "push button" - parent: content - index: 0 - name: Page 1 - state: enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button2 - "push button" - parent: content - index: 1 - name: Page 2 - state: enabled focusable sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - action_area - "filler" - parent: content_box - index: 1 - state: enabled horizontal sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - headerbar - "panel" - parent: window1 - index: 1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - cancel - "push button" - parent: unnamed-GtkContainerAccessible-0 - index: 0 - name: Cancel - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - action 0 keybinding: <Alt>c - back - "push button" - parent: unnamed-GtkContainerAccessible-0 - index: 1 - name: Back - state: enabled focusable sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - action 0 keybinding: <Alt>b - apply - "push button" - parent: unnamed-GtkContainerAccessible-1 - index: 0 - name: Apply - state: enabled focusable sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - action 0 keybinding: <Alt>a - forward - "push button" - parent: unnamed-GtkContainerAccessible-1 - index: 1 - name: Next - state: focusable showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - action 0 keybinding: <Alt>n - last - "push button" - parent: unnamed-GtkContainerAccessible-1 - index: 2 - name: Finish - state: focusable - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - action 0 keybinding: <Alt>f - close - "push button" - parent: unnamed-GtkContainerAccessible-1 - index: 3 - name: Close - state: enabled focusable sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - action 0 keybinding: <Alt>c diff --git a/testsuite/a11y/assistant.ui b/testsuite/a11y/assistant.ui deleted file mode 100644 index b7be54e2bd..0000000000 --- a/testsuite/a11y/assistant.ui +++ /dev/null @@ -1,24 +0,0 @@ -<interface> - <object class="GtkAssistant" id="window1"> - <child> - <object class="GtkAssistantPage"> - <property name="title" translatable="yes">Page 1</property> - <property name="child"> - <object class="GtkButton" id="button1"> - <property name="label" translatable="yes">Button 1</property> - </object> - </property> - </object> - </child> - <child> - <object class="GtkAssistantPage"> - <property name="title" translatable="yes">Page 2</property> - <property name="child"> - <object class="GtkButton" id="button2"> - <property name="label" translatable="yes">Button 2</property> - </object> - </property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/buttons.txt b/testsuite/a11y/buttons.txt deleted file mode 100644 index c548386098..0000000000 --- a/testsuite/a11y/buttons.txt +++ /dev/null @@ -1,164 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - grid1 - "panel" - parent: window1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button1 - "toggle button" - parent: grid1 - index: 0 - name: Hello World! - state: checked enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button2 - "check box" - parent: grid1 - index: 1 - name: Hello World! - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button3 - "radio button" - parent: grid1 - index: 2 - name: Hello World! - member-of: button4 - button3 - state: checked enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button4 - "radio button" - parent: grid1 - index: 3 - name: Hello World! - member-of: button4 - button3 - state: checked enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button5 - "toggle button" - parent: grid1 - index: 4 - state: checked enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: toggle - action 0 description: Toggles the switch - button6 - "toggle button" - parent: grid1 - index: 5 - name: Test switch - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: toggle - action 0 description: Toggles the switch - button7 - "push button" - parent: grid1 - index: 6 - name: Text Button - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button8 - "push button" - parent: grid1 - index: 7 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button9 - "push button" - parent: grid1 - index: 8 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button diff --git a/testsuite/a11y/buttons.ui b/testsuite/a11y/buttons.ui deleted file mode 100644 index 9450cf6e6e..0000000000 --- a/testsuite/a11y/buttons.ui +++ /dev/null @@ -1,108 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkGrid" id="grid1"> - <child> - <object class="GtkToggleButton" id="button1"> - <property name="label" translatable="yes">Hello World!</property> - <property name="active">1</property> - <property name="receives_default">1</property> - <layout> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkCheckButton" id="button2"> - <property name="label" translatable="yes">Hello World!</property> - <property name="receives_default">1</property> - <layout> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkRadioButton" id="button3"> - <property name="label" translatable="yes">Hello World!</property> - <property name="receives_default">1</property> - <layout> - <property name="left_attach">2</property> - <property name="top_attach">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkRadioButton" id="button4"> - <property name="label" translatable="yes">Hello World!</property> - <property name="active">1</property> - <property name="group">button3</property> - <property name="receives_default">1</property> - <layout> - <property name="left_attach">3</property> - <property name="top_attach">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkSwitch" id="button5"> - <property name="active">1</property> - <property name="receives_default">1</property> - <layout> - <property name="left_attach">4</property> - <property name="top_attach">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkSwitch" id="button6"> - <property name="receives_default">1</property> - <child internal-child="accessible"> - <object class="AtkObject" id="button6-accessible"> - <property name="accessible-name">Test switch</property> - </object> - </child> - <layout> - <property name="left_attach">5</property> - <property name="top_attach">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkButton" id="button7"> - <property name="receives_default">1</property> - <property name="label">Text Button</property> - <layout> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </layout> - </object> - </child> - <child> - <object class="GtkButton" id="button8"> - <property name="receives_default">1</property> - <property name="halign">center</property> - <property name="valign">center</property> - <layout> - <property name="left_attach">1</property> - <property name="top_attach">1</property> - </layout> - </object> - </child> - <child> - <object class="GtkButton" id="button9"> - <property name="receives_default">1</property> - <property name="halign">center</property> - <property name="valign">center</property> - <layout> - <property name="left_attach">2</property> - <property name="top_attach">1</property> - </layout> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/calendar.txt b/testsuite/a11y/calendar.txt deleted file mode 100644 index 6c7dca3d2e..0000000000 --- a/testsuite/a11y/calendar.txt +++ /dev/null @@ -1,25 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - calendar1 - "calendar" - parent: window1 - index: 0 - state: enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 diff --git a/testsuite/a11y/calendar.ui b/testsuite/a11y/calendar.ui deleted file mode 100644 index 9a0da55b6f..0000000000 --- a/testsuite/a11y/calendar.ui +++ /dev/null @@ -1,14 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkCalendar" id="calendar1"> - <property name="visible">True</property> - <property name="day">1</property> - <property name="month">2</property> - <property name="year">1970</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/children.c b/testsuite/a11y/children.c deleted file mode 100644 index 25315c990a..0000000000 --- a/testsuite/a11y/children.c +++ /dev/null @@ -1,265 +0,0 @@ -/* - * Copyright (C) 2011 Red Hat Inc. - * - * Author: - * Matthias Clasen <mclasen@redhat.com> - * - * 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, see <http://www.gnu.org/licenses/>. - */ - -#define GDK_DISABLE_DEPRECATION_WARNINGS -#undef GTK_DISABLE_DEPRECATED - -#include <gtk/gtk.h> -#include <string.h> - -typedef struct -{ - GtkWidget *widget; - gpointer child[3]; -} STATE; - -static void -test_scrolled_window_child_count (void) -{ - GtkWidget *sw; - AtkObject *accessible; - - sw = gtk_scrolled_window_new (); - g_object_ref_sink (sw); - gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw), - GTK_POLICY_ALWAYS, GTK_POLICY_ALWAYS); - gtk_scrolled_window_set_child (GTK_SCROLLED_WINDOW (sw), gtk_label_new ("Bla")); - - accessible = gtk_widget_get_accessible (sw); - g_assert_cmpint (atk_object_get_n_accessible_children (accessible), ==, 3); - - g_object_unref (sw); -} - -typedef struct { - int count; - int index; - int n_children; - gpointer parent; -} SignalData; - -static void -children_changed (AtkObject *accessible, - guint index, - gpointer child, - SignalData *data) -{ - data->count++; - data->index = index; - data->n_children = atk_object_get_n_accessible_children (accessible); -} - -static void -remove_child (STATE *state, - int i) -{ - GtkWidget *child; - - if (GTK_IS_ENTRY (state->widget)) - { - switch (i) - { - case 0: - gtk_entry_set_icon_from_gicon (GTK_ENTRY (state->widget), - GTK_ENTRY_ICON_PRIMARY, - NULL); - return; - case 1: - gtk_entry_set_icon_from_gicon (GTK_ENTRY (state->widget), - GTK_ENTRY_ICON_SECONDARY, - NULL); - return; - default: - return; - } - } - - child = state->child [i]; - if (GTK_IS_SCROLLED_WINDOW (state->widget)) - { - if (gtk_widget_get_parent (child) != state->widget) - child = gtk_widget_get_parent (child); - } - - gtk_box_remove (GTK_BOX (state->widget), child); -} - -static void -parent_notify (AtkObject *obj, GParamSpec *pspec, SignalData *data) -{ - data->count++; - data->parent = atk_object_get_parent (obj); -} - -static gboolean -do_create_child (STATE *state, int i) -{ - if (GTK_IS_ENTRY (state->widget)) - { - switch (i) - { - case 0: - gtk_entry_set_icon_from_icon_name (GTK_ENTRY (state->widget), - GTK_ENTRY_ICON_PRIMARY, - "dialog-warning-symbolic"); - return TRUE; - case 1: - gtk_entry_set_icon_from_icon_name (GTK_ENTRY (state->widget), - GTK_ENTRY_ICON_SECONDARY, - "edit-clear"); - return TRUE; - default: - return FALSE; - } - } - - state->child[i] = gtk_label_new ("bla"); - return TRUE; -} - -static void -test_add_remove (GtkWidget *widget) -{ - AtkObject *accessible; - AtkObject *child_accessible; - SignalData add_data; - SignalData remove_data; - SignalData parent_data[3] = { { 0, }, }; - STATE state; - int i, j; - int step_children; - - state.widget = widget; - accessible = gtk_widget_get_accessible (widget); - - add_data.count = 0; - remove_data.count = 0; - g_signal_connect (accessible, "children_changed::add", - G_CALLBACK (children_changed), &add_data); - g_signal_connect (accessible, "children_changed::remove", - G_CALLBACK (children_changed), &remove_data); - - step_children = atk_object_get_n_accessible_children (accessible); - - for (i = 0; i < 3; i++) - { - if (!do_create_child (&state, i)) - break; - if (!GTK_IS_ENTRY (widget)) - { - parent_data[i].count = 0; - child_accessible = gtk_widget_get_accessible (state.child[i]); - g_signal_connect (child_accessible, "notify::accessible-parent", - G_CALLBACK (parent_notify), &(parent_data[i])); - gtk_box_append (GTK_BOX (widget), state.child[i]); - } - else - child_accessible = atk_object_ref_accessible_child (accessible, i); - - g_assert_cmpint (add_data.count, ==, i + 1); - g_assert_cmpint (add_data.n_children, ==, step_children + i + 1); - g_assert_cmpint (remove_data.count, ==, 0); - if (!GTK_IS_ENTRY (widget)) - g_assert_cmpint (parent_data[i].count, ==, 1); - if (GTK_IS_SCROLLED_WINDOW (widget) || - GTK_IS_NOTEBOOK (widget)) - g_assert (atk_object_get_parent (ATK_OBJECT (parent_data[i].parent)) == accessible); - else if (GTK_IS_ENTRY (widget)) - g_assert (atk_object_get_parent (child_accessible) == accessible); - else - g_assert (parent_data[i].parent == accessible); - - if (GTK_IS_ENTRY (widget)) - g_object_unref (child_accessible); - } - for (j = 0 ; j < i; j++) - { - remove_child (&state, j); - g_assert_cmpint (add_data.count, ==, i); - g_assert_cmpint (remove_data.count, ==, j + 1); - g_assert_cmpint (remove_data.n_children, ==, step_children + i - j - 1); - if (parent_data[j].count == 2) - g_assert (parent_data[j].parent == NULL); - else if (!GTK_IS_ENTRY (widget)) - { - AtkStateSet *set; - set = atk_object_ref_state_set (ATK_OBJECT (parent_data[j].parent)); - g_assert (atk_state_set_contains_state (set, ATK_STATE_DEFUNCT)); - g_object_unref (set); - } - } - - g_signal_handlers_disconnect_by_func (accessible, G_CALLBACK (children_changed), &add_data); - g_signal_handlers_disconnect_by_func (accessible, G_CALLBACK (children_changed), &remove_data); -} - -static void -add_child_test (const char *prefix, - GTestFixtureFunc test_func, - GtkWidget *widget) -{ - char *path; - - path = g_strdup_printf ("%s/%s", prefix, G_OBJECT_TYPE_NAME (widget)); - g_test_add_vtable (path, - 0, - g_object_ref (widget), - 0, - (GTestFixtureFunc) test_func, - (GTestFixtureFunc) g_object_unref); - g_free (path); -} - -static void -add_child_tests (GtkWidget *widget) -{ - g_object_ref_sink (widget); - add_child_test ("/child/add-remove", (GTestFixtureFunc)test_add_remove, widget); - g_object_unref (widget); -} - -int -main (int argc, char *argv[]) -{ - gtk_test_init (&argc, &argv, NULL); - - g_test_add_func ("/scrolledwindow/child-count", test_scrolled_window_child_count); - - add_child_tests (gtk_scrolled_window_new ()); - add_child_tests (gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0)); - add_child_tests (gtk_paned_new (GTK_ORIENTATION_HORIZONTAL)); - add_child_tests (gtk_grid_new ()); - add_child_tests (gtk_window_new ()); - add_child_tests (gtk_assistant_new ()); - add_child_tests (gtk_frame_new ("frame")); - add_child_tests (gtk_expander_new ("expander")); - add_child_tests (gtk_text_view_new ()); - add_child_tests (gtk_tree_view_new ()); -#if 0 - /* gail doesn't handle non-label children in these */ - add_child_tests (gtk_button_new ()); - add_child_tests (gtk_statusbar_new ()); -#endif - add_child_tests (gtk_notebook_new ()); - add_child_tests (gtk_entry_new ()); - - return g_test_run (); -} - diff --git a/testsuite/a11y/children.test.in b/testsuite/a11y/children.test.in deleted file mode 100644 index 33085b5681..0000000000 --- a/testsuite/a11y/children.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/a11y/children -k --tap -Type=session -Output=TAP diff --git a/testsuite/a11y/colorchooser.txt b/testsuite/a11y/colorchooser.txt deleted file mode 100644 index b0e7b1a99a..0000000000 --- a/testsuite/a11y/colorchooser.txt +++ /dev/null @@ -1,1212 +0,0 @@ -window1 - "dialog" - index: 0 - name: Select a Color - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - ___object_1___ - "filler" - parent: window1 - index: 0 - state: enabled sensitive showing vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - dialog-vbox1 - "filler" - parent: ___object_1___ - index: 0 - state: enabled sensitive showing vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - chooser - "filler" - parent: dialog-vbox1 - index: 0 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "filler" - parent: chooser - index: 0 - state: enabled sensitive showing vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-1 - "panel" - parent: unnamed-GtkContainerAccessible-0 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkColorSwatchAccessible-2 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 0 - name: Light Scarlet Red - state: enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-3 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 1 - name: Scarlet Red - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-4 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 2 - name: Dark Scarlet Red - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-5 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 3 - name: Light Orange - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-6 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 4 - name: Orange - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-7 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 5 - name: Dark Orange - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-8 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 6 - name: Light Butter - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-9 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 7 - name: Butter - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-10 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 8 - name: Dark Butter - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-11 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 9 - name: Light Chameleon - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-12 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 10 - name: Chameleon - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-13 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 11 - name: Dark Chameleon - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-14 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 12 - name: Light Sky Blue - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-15 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 13 - name: Sky Blue - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-16 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 14 - name: Dark Sky Blue - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-17 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 15 - name: Light Plum - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-18 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 16 - name: Plum - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-19 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 17 - name: Dark Plum - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-20 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 18 - name: Light Chocolate - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-21 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 19 - name: Chocolate - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-22 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 20 - name: Dark Chocolate - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-23 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 21 - name: Light Aluminum 1 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-24 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 22 - name: Aluminum 1 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-25 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 23 - name: Dark Aluminum 1 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-26 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 24 - name: Light Aluminum 2 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-27 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 25 - name: Aluminum 2 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-28 - "radio button" - parent: unnamed-GtkContainerAccessible-1 - index: 26 - name: Dark Aluminum 2 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkContainerAccessible-29 - "panel" - parent: unnamed-GtkContainerAccessible-0 - index: 1 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkColorSwatchAccessible-30 - "radio button" - parent: unnamed-GtkContainerAccessible-29 - index: 0 - name: Black - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-31 - "radio button" - parent: unnamed-GtkContainerAccessible-29 - index: 1 - name: Very Dark Gray - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-32 - "radio button" - parent: unnamed-GtkContainerAccessible-29 - index: 2 - name: Darker Gray - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-33 - "radio button" - parent: unnamed-GtkContainerAccessible-29 - index: 3 - name: Dark Gray - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-34 - "radio button" - parent: unnamed-GtkContainerAccessible-29 - index: 4 - name: Medium Gray - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-35 - "radio button" - parent: unnamed-GtkContainerAccessible-29 - index: 5 - name: Light Gray - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-36 - "radio button" - parent: unnamed-GtkContainerAccessible-29 - index: 6 - name: Lighter Gray - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-37 - "radio button" - parent: unnamed-GtkContainerAccessible-29 - index: 7 - name: Very Light Gray - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - unnamed-GtkColorSwatchAccessible-38 - "radio button" - parent: unnamed-GtkContainerAccessible-29 - index: 8 - name: White - state: checked enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - Custom - "label" - parent: unnamed-GtkContainerAccessible-0 - index: 2 - name: Custom - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Custom - character count: 6 - caret offset: -1 - 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 - <AtkHypertext> - unnamed-GtkContainerAccessible-39 - "filler" - parent: unnamed-GtkContainerAccessible-0 - index: 3 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkColorSwatchAccessible-40 - "push button" - parent: unnamed-GtkContainerAccessible-39 - index: 0 - name: Custom color - description: Create a custom color - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - GtkColorEditor - "filler" - parent: chooser - index: 1 - state: enabled horizontal sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - overlay - "panel" - parent: GtkColorEditor - index: 0 - state: enabled sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - grid - "panel" - parent: overlay - index: 0 - state: enabled horizontal sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - picker_button - "push button" - parent: grid - index: 0 - description: Pick a color from the screen - state: enabled focusable sensitive visible has-tooltip - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: 16 x 16 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - swatch - "radio button" - parent: grid - index: 1 - state: enabled sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: select - action 0 description: Selects the color - action 1 name: activate - action 1 description: Activates the color - action 2 name: customize - action 2 description: Customizes the color - entry - "text" - parent: grid - index: 2 - name: Color Name - state: editable enabled focusable sensitive single-line visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: - character count: 0 - caret offset: -1 - 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 - <AtkAction> - action 0 name: activate - action 0 description: Activates the entry - h_slider - "color chooser" - parent: grid - index: 3 - name: Hue - state: enabled focusable sensitive vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: 0.000000 - maximum value: 1.000000 - current value: 0.000000 - a_slider - "color chooser" - parent: grid - index: 4 - name: Alpha - state: enabled focusable horizontal sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: 0.000000 - maximum value: 1.000000 - current value: 0.000000 - sv_plane - "color chooser" - parent: grid - index: 5 - name: Color Plane - state: enabled focusable sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - sv_popup - "filler" - parent: overlay - index: 1 - state: enabled horizontal sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - grid2 - "panel" - parent: sv_popup - index: 0 - state: enabled horizontal sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - label1 - "label" - parent: grid2 - index: 0 - name: S - state: enabled focusable multi-line sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: S - character count: 1 - caret offset: -1 - 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 - <AtkHypertext> - label2 - "label" - parent: grid2 - index: 1 - name: V - state: enabled focusable multi-line sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: V - character count: 1 - caret offset: -1 - 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 - <AtkHypertext> - s_entry - "spin button" - parent: grid2 - index: 2 - name: Saturation - state: enabled focusable horizontal sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: 0.000000 - maximum value: 100.000000 - current value: 0.000000 - v_entry - "spin button" - parent: grid2 - index: 3 - name: Value - state: enabled focusable horizontal sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: 0.000000 - maximum value: 100.000000 - current value: 0.000000 - h_popup - "filler" - parent: overlay - index: 2 - state: enabled horizontal sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - grid3 - "panel" - parent: h_popup - index: 0 - state: enabled horizontal sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - label3 - "label" - parent: grid3 - index: 0 - name: H - state: enabled focusable multi-line sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: H - character count: 1 - caret offset: -1 - 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 - <AtkHypertext> - h_entry - "spin button" - parent: grid3 - index: 1 - name: Hue - state: enabled focusable horizontal sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: 0.000000 - maximum value: 360.000000 - current value: 0.000000 - a_popup - "filler" - parent: overlay - index: 3 - state: enabled horizontal sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - grid4 - "panel" - parent: a_popup - index: 0 - state: enabled horizontal sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - label4 - "label" - parent: grid4 - index: 0 - name: A - state: enabled focusable multi-line sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: A - character count: 1 - caret offset: -1 - 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 - <AtkHypertext> - a_entry - "spin button" - parent: grid4 - index: 1 - name: Alpha - state: enabled focusable horizontal sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: 0.000000 - maximum value: 100.000000 - current value: 0.000000 - action_box - "filler" - parent: ___object_1___ - index: 1 - state: enabled horizontal sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - action_area - "filler" - parent: action_box - index: 0 - state: enabled horizontal sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - headerbar - "panel" - parent: window1 - index: 1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - cancel_button - "push button" - parent: unnamed-GtkContainerAccessible-41 - index: 0 - name: Cancel - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - action 0 keybinding: <Alt>c - ok_button - "push button" - parent: unnamed-GtkContainerAccessible-42 - index: 0 - name: Select - state: enabled focusable sensitive showing visible default - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - action 0 keybinding: <Alt>s diff --git a/testsuite/a11y/colorchooser.ui b/testsuite/a11y/colorchooser.ui deleted file mode 100644 index 90569f52ab..0000000000 --- a/testsuite/a11y/colorchooser.ui +++ /dev/null @@ -1,6 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkColorChooserDialog" id="window1"> - </object> -</interface> diff --git a/testsuite/a11y/combos.txt b/testsuite/a11y/combos.txt deleted file mode 100644 index 8e15335d95..0000000000 --- a/testsuite/a11y/combos.txt +++ /dev/null @@ -1,274 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - box1 - "filler" - parent: window1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - label1 - "label" - parent: box1 - index: 0 - name: Combo: - label-for: combo1 - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Combo: - character count: 6 - caret offset: -1 - 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 - <AtkHypertext> - combo1 - "combo box" - parent: box1 - index: 1 - labelled-by: label1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: press - action 0 description: Presses the combobox - action 0 keybinding: <Alt>c - <AtkSelection> - popup_widget - "panel" - parent: combo1 - index: 0 - state: enabled sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkStackAccessible-1 - "panel" - parent: unnamed-GtkWidgetAccessible-2 - index: 0 - state: enabled sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - combo2 - "combo box" - parent: box1 - index: 2 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: press - action 0 description: Presses the combobox - <AtkSelection> - popup_widget - "panel" - parent: combo2 - index: 0 - state: enabled sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkStackAccessible-3 - "panel" - parent: unnamed-GtkWidgetAccessible-4 - index: 0 - state: enabled sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - - "text" - parent: combo2 - index: 1 - state: editable enabled focusable sensitive showing single-line visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: - character count: 0 - caret offset: -1 - 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 - <AtkAction> - action 0 name: activate - action 0 description: Activates the entry - combo3 - "combo box" - parent: box1 - index: 3 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: press - action 0 description: Presses the combobox - <AtkSelection> - popup_widget - "panel" - parent: combo3 - index: 0 - state: enabled sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkStackAccessible-5 - "panel" - parent: unnamed-GtkWidgetAccessible-6 - index: 0 - state: enabled sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - combo4 - "combo box" - parent: box1 - index: 4 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: press - action 0 description: Presses the combobox - <AtkSelection> - popup_widget - "panel" - parent: combo4 - index: 0 - state: enabled sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkStackAccessible-7 - "panel" - parent: unnamed-GtkWidgetAccessible-8 - index: 0 - state: enabled sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - - "text" - parent: combo4 - index: 1 - state: editable enabled focusable sensitive showing single-line visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: - character count: 0 - caret offset: -1 - 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 - <AtkAction> - action 0 name: activate - action 0 description: Activates the entry diff --git a/testsuite/a11y/combos.ui b/testsuite/a11y/combos.ui deleted file mode 100644 index e80bf1ce94..0000000000 --- a/testsuite/a11y/combos.ui +++ /dev/null @@ -1,40 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkBox" id="box1"> - <child> - <object class="GtkLabel" id="label1"> - <property name="visible">True</property> - <property name="label">_Combo:</property> - <property name="use-underline">True</property> - <property name="mnemonic-widget">combo1</property> - </object> - </child> - <child> - <object class="GtkComboBox" id="combo1"> - <property name="visible">True</property> - </object> - </child> - <child> - <object class="GtkComboBox" id="combo2"> - <property name="visible">True</property> - <property name="has-entry">True</property> - </object> - </child> - <child> - <object class="GtkComboBoxText" id="combo3"> - <property name="visible">True</property> - </object> - </child> - <child> - <object class="GtkComboBoxText" id="combo4"> - <property name="visible">True</property> - <property name="has-entry">True</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/derive.c b/testsuite/a11y/derive.c deleted file mode 100644 index 397097237f..0000000000 --- a/testsuite/a11y/derive.c +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (C) 2012 Red Hat Inc. - * - * Author: - * Matthias Clasen <mclasen@redhat.com> - * - * 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, see <http://www.gnu.org/licenses/>. - */ - -#include <gtk/gtk.h> -#include <gtk/gtk-a11y.h> - -/* Implement a (trivial) GtkButton subclass, derive GtkButtonAccessible - * and use the derived accessible for our new button. - */ - -typedef GtkButtonAccessible MyButtonAccessible; -typedef GtkButtonAccessibleClass MyButtonAccessibleClass; - - -GType my_button_accessible_get_type (void); -G_DEFINE_TYPE (MyButtonAccessible, my_button_accessible, GTK_TYPE_BUTTON_ACCESSIBLE) - -static void -my_button_accessible_init (MyButtonAccessible *a) -{ -} - -static void -my_button_accessible_class_init (MyButtonAccessibleClass *class) -{ -} - -typedef GtkButton MyButton; -typedef GtkButtonClass MyButtonClass; - -GType my_button_get_type (void); -G_DEFINE_TYPE (MyButton, my_button, GTK_TYPE_BUTTON) - -static void -my_button_init (MyButton *b) -{ -} - -static void -my_button_class_init (MyButtonClass *class) -{ - gtk_widget_class_set_accessible_type (GTK_WIDGET_CLASS (class), - my_button_accessible_get_type ()); -} - -static void -test_derive (void) -{ - GtkWidget *widget; - GtkAccessible *accessible; - - widget = GTK_WIDGET (g_object_new (my_button_get_type (), NULL)); - accessible = GTK_ACCESSIBLE (gtk_widget_get_accessible (widget)); - - g_assert (G_TYPE_CHECK_INSTANCE_TYPE (accessible, my_button_accessible_get_type ())); -} - -int -main (int argc, char *argv[]) -{ - gtk_test_init (&argc, &argv, NULL); - - g_test_add_func ("/derive", test_derive); - - return g_test_run (); -} diff --git a/testsuite/a11y/derive.test.in b/testsuite/a11y/derive.test.in deleted file mode 100644 index 6c97ca0314..0000000000 --- a/testsuite/a11y/derive.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/a11y/derive -k --tap -Type=session -Output=TAP diff --git a/testsuite/a11y/entries.txt b/testsuite/a11y/entries.txt deleted file mode 100644 index 680807ac5a..0000000000 --- a/testsuite/a11y/entries.txt +++ /dev/null @@ -1,310 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - box1 - "filler" - parent: window1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - label1 - "label" - parent: box1 - index: 0 - name: entry: - label-for: entry1 - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: entry: - character count: 6 - caret offset: -1 - 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 - <AtkHypertext> - label2 - "label" - parent: box1 - index: 1 - name: password entry: - label-for: entry2 - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: password entry: - character count: 15 - caret offset: -1 - 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 - <AtkHypertext> - label3 - "label" - parent: box1 - index: 2 - name: spinbutton: - label-for: spinbutton1 - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: spinbutton: - character count: 11 - caret offset: -1 - 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 - <AtkHypertext> - entry1 - "text" - parent: box1 - index: 3 - labelled-by: label1 - state: editable enabled focusable focused sensitive showing single-line visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: text - character count: 4 - caret offset: 4 - selection 0: (0, 4) text - 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 - <AtkAction> - action 0 name: activate - action 0 description: Activates the entry - action 0 keybinding: <Alt>e - entry2 - "text" - parent: box1 - index: 4 - labelled-by: label2 - state: editable enabled focusable sensitive showing single-line visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: ************* - character count: 13 - caret offset: -1 - 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 - <AtkAction> - action 0 name: activate - action 0 description: Activates the entry - action 0 keybinding: <Alt>p - entry3 - "text" - parent: box1 - index: 5 - state: editable enabled focusable sensitive showing single-line visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: icons - character count: 5 - caret offset: -1 - 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 - <AtkAction> - action 0 name: activate - action 0 description: Activates the entry - unnamed-GtkEntryIconAccessible-1 - "icon" - parent: entry3 - name: edit-undo - state: enabled sensitive showing visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: activate - unnamed-GtkEntryIconAccessible-2 - "icon" - parent: entry3 - name: edit-redo - state: enabled sensitive showing visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: activate - spinbutton1 - "spin button" - parent: box1 - index: 6 - labelled-by: label3 - state: enabled focusable horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: 0.500000 - maximum value: 99.500000 - current value: 45.500000 diff --git a/testsuite/a11y/entries.ui b/testsuite/a11y/entries.ui deleted file mode 100644 index b0fd260798..0000000000 --- a/testsuite/a11y/entries.ui +++ /dev/null @@ -1,71 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkAdjustment" id="adjustment1"> - <property name="lower">0.5</property> - <property name="upper">99.5</property> - <property name="page-size">0</property> - <property name="value">45.5</property> - <property name="step-increment">0.5</property> - <property name="page-increment">5.0</property> - </object> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkBox" id="box1"> - <child> - <object class="GtkLabel" id="label1"> - <property name="label">_entry:</property> - <property name="visible">True</property> - <property name="use-underline">True</property> - <property name="mnemonic-widget">entry1</property> - </object> - </child> - <child> - <object class="GtkLabel" id="label2"> - <property name="label">_password entry:</property> - <property name="visible">True</property> - <property name="use-underline">True</property> - <property name="mnemonic-widget">entry2</property> - </object> - </child> - <child> - <object class="GtkLabel" id="label3"> - <property name="label">_spinbutton:</property> - <property name="visible">True</property> - <property name="use-underline">True</property> - <property name="mnemonic-widget">spinbutton1</property> - </object> - </child> - <child> - <object class="GtkEntry" id="entry1"> - <property name="text" translatable="yes">text</property> - <property name="visible">True</property> - </object> - </child> - <child> - <object class="GtkEntry" id="entry2"> - <property name="text" translatable="yes">password text</property> - <property name="visible">True</property> - <property name="visibility">False</property> - <property name="invisible_char">*</property> - <property name="invisible_char_set">True</property> - </object> - </child> - <child> - <object class="GtkEntry" id="entry3"> - <property name="text" translatable="yes">icons</property> - <property name="visible">True</property> - <property name="primary-icon-name">edit-undo</property> - <property name="secondary-icon-name">edit-redo</property> - </object> - </child> - <child> - <object class="GtkSpinButton" id="spinbutton1"> - <property name="adjustment">adjustment1</property> - <property name="visible">True</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/expander.txt b/testsuite/a11y/expander.txt deleted file mode 100644 index 94e0b9aced..0000000000 --- a/testsuite/a11y/expander.txt +++ /dev/null @@ -1,67 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - expander1 - "toggle button" - parent: window1 - index: 0 - name: Reveal this - state: enabled expandable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: activate - action 0 description: Activates the expander - label1 - "label" - name: Hello World! - state: enabled focusable multi-line sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Hello World! - character count: 12 - caret offset: -1 - 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 - <AtkHypertext> diff --git a/testsuite/a11y/expander.ui b/testsuite/a11y/expander.ui deleted file mode 100644 index 76145bb358..0000000000 --- a/testsuite/a11y/expander.ui +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkExpander" id="expander1"> - <property name="label" translatable="yes">Reveal this</property> - <property name="visible">True</property> - <child> - <object class="GtkLabel" id="label1"> - <property name="label" translatable="yes">Hello World!</property> - <property name="visible">True</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/headerbar.txt b/testsuite/a11y/headerbar.txt deleted file mode 100644 index 902522aff5..0000000000 --- a/testsuite/a11y/headerbar.txt +++ /dev/null @@ -1,57 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - headerbar1 - "panel" - parent: window1 - index: 0 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button1 - "push button" - parent: unnamed-GtkContainerAccessible-1 - index: 0 - name: Yes - state: enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - page2 - "push button" - parent: unnamed-GtkContainerAccessible-2 - index: 0 - name: No - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button diff --git a/testsuite/a11y/headerbar.ui b/testsuite/a11y/headerbar.ui deleted file mode 100644 index a0790778dc..0000000000 --- a/testsuite/a11y/headerbar.ui +++ /dev/null @@ -1,19 +0,0 @@ -<interface> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkHeaderBar" id="headerbar1"> - <property name="show-title-buttons">0</property> - <child type="start"> - <object class="GtkButton" id="button1"> - <property name="label" translatable="yes">Yes</property> - </object> - </child> - <child type="end"> - <object class="GtkButton" id="page2"> - <property name="label" translatable="yes">No</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/hello-world.txt b/testsuite/a11y/hello-world.txt deleted file mode 100644 index b60cf77ae5..0000000000 --- a/testsuite/a11y/hello-world.txt +++ /dev/null @@ -1,32 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button1 - "push button" - parent: window1 - index: 0 - name: Hello World! - state: enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button diff --git a/testsuite/a11y/hello-world.ui b/testsuite/a11y/hello-world.ui deleted file mode 100644 index bed92b67b6..0000000000 --- a/testsuite/a11y/hello-world.ui +++ /dev/null @@ -1,13 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkButton" id="button1"> - <property name="label" translatable="yes">Hello World!</property> - <property name="visible">True</property> - <property name="receives_default">True</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/iconview.txt b/testsuite/a11y/iconview.txt deleted file mode 100644 index eb3ed6b412..0000000000 --- a/testsuite/a11y/iconview.txt +++ /dev/null @@ -1,98 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - iv1 - "layered pane" - parent: window1 - index: 0 - state: enabled focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkSelection> - One - "icon" - parent: iv1 - index: 0 - state: enabled focusable selectable sensitive showing visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: One - character count: 3 - caret offset: -1 - <AtkImage> - image size: 0 x 0 - image description: (null) - <AtkAction> - action 0 name: activate - action 0 description: Activate item - Three - "icon" - parent: iv1 - index: 1 - state: enabled focusable selectable sensitive showing visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Three - character count: 5 - caret offset: -1 - <AtkImage> - image size: 0 x 0 - image description: (null) - <AtkAction> - action 0 name: activate - action 0 description: Activate item - Five - "icon" - parent: iv1 - index: 2 - state: enabled focusable selectable sensitive showing visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Five - character count: 4 - caret offset: -1 - <AtkImage> - image size: 0 x 0 - image description: (null) - <AtkAction> - action 0 name: activate - action 0 description: Activate item - Seven - "icon" - parent: iv1 - index: 3 - state: enabled focusable selectable sensitive showing visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Seven - character count: 5 - caret offset: -1 - <AtkImage> - image size: 0 x 0 - image description: (null) - <AtkAction> - action 0 name: activate - action 0 description: Activate item diff --git a/testsuite/a11y/iconview.ui b/testsuite/a11y/iconview.ui deleted file mode 100644 index a12d846b28..0000000000 --- a/testsuite/a11y/iconview.ui +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkListStore" id="liststore1"> - <columns> - <column type="gchararray"/> - <column type="gchararray"/> - </columns> - <data> - <row><col id="0">One</col><col id="1">Two</col></row> - <row><col id="0">Three</col><col id="1">Four</col></row> - <row><col id="0">Five</col><col id="1">Six</col></row> - <row><col id="0">Seven</col><col id="1">Eight</col></row> - </data> - </object> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkIconView" id="iv1"> - <property name="visible">True</property> - <property name="model">liststore1</property> - <child> - <object class="GtkCellRendererText" id="renderer1"> - </object> - <attributes> - <attribute name="text">0</attribute> - </attributes> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/infobar.txt b/testsuite/a11y/infobar.txt deleted file mode 100644 index 19d9bbf4c0..0000000000 --- a/testsuite/a11y/infobar.txt +++ /dev/null @@ -1,118 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - bar1 - "info bar" - parent: window1 - index: 0 - name: Information - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-1 - "panel" - parent: bar1 - index: 0 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-2 - "filler" - parent: unnamed-GtkContainerAccessible-1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-3 - "filler" - parent: unnamed-GtkContainerAccessible-2 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - label1 - "label" - parent: unnamed-GtkContainerAccessible-3 - index: 0 - name: Some important info - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Some important info - character count: 19 - caret offset: -1 - 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 - <AtkHypertext> - unnamed-GtkContainerAccessible-4 - "filler" - parent: unnamed-GtkContainerAccessible-2 - index: 1 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkButtonAccessible-5 - "push button" - parent: unnamed-GtkContainerAccessible-2 - index: 2 - name: Close - state: enabled focusable sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: 16 x 16 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button diff --git a/testsuite/a11y/infobar.ui b/testsuite/a11y/infobar.ui deleted file mode 100644 index 6348b08dc9..0000000000 --- a/testsuite/a11y/infobar.ui +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkInfoBar" id="bar1"> - <property name="visible">True</property> - <property name="message-type">info</property> - <child> - <object class="GtkLabel" id="label1"> - <property name="visible">True</property> - <property name="label" translatable="yes">Some important info</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/label-static.txt b/testsuite/a11y/label-static.txt deleted file mode 100644 index a4ab85a9f9..0000000000 --- a/testsuite/a11y/label-static.txt +++ /dev/null @@ -1,82 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - label1 - "static" - parent: window1 - index: 0 - name: Go to the GTK+ website or >google it - state: enabled focusable focused multi-line sensitive showing visible has-tooltip - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Go to the GTK+ website or >google it - character count: 36 - caret offset: -1 - 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 - <AtkHypertext> - <AtkHyperlink> - start index: 10 - end index: 22 - anchors: http://www.gtk.org - <AtkHyperlink> - start index: 27 - end index: 36 - anchors: http://www.google.com - unnamed-GtkLabelAccessibleLinkImpl-1 - "link" - parent: label1 - state: enabled focusable focused multi-line sensitive showing visible has-tooltip - <AtkHyperlinkImpl> - <AtkHyperlink> - start index: 10 - end index: 22 - anchors: http://www.gtk.org - unnamed-GtkLabelAccessibleLinkImpl-2 - "link" - parent: label1 - state: enabled focusable multi-line sensitive showing visible has-tooltip - <AtkHyperlinkImpl> - <AtkHyperlink> - start index: 27 - end index: 36 - anchors: http://www.google.com diff --git a/testsuite/a11y/label-static.ui b/testsuite/a11y/label-static.ui deleted file mode 100644 index 08571bd1ee..0000000000 --- a/testsuite/a11y/label-static.ui +++ /dev/null @@ -1,15 +0,0 @@ - -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkLabel" id="label1"> - <property name="label">Go to the <a href="http://www.gtk.org" title="<i>Our</i> website">GTK+ website</a> or <small>><a href="http://www.google.com">google it</a></small></property> - <property name="use-markup">True</property> - <accessibility> - <role type="static"/> - </accessibility> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/label.txt b/testsuite/a11y/label.txt deleted file mode 100644 index 009363646c..0000000000 --- a/testsuite/a11y/label.txt +++ /dev/null @@ -1,82 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - label1 - "label" - parent: window1 - index: 0 - name: Go to the GTK+ website or >google it - state: enabled focusable focused multi-line sensitive showing visible has-tooltip - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Go to the GTK+ website or >google it - character count: 36 - caret offset: -1 - 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 - <AtkHypertext> - <AtkHyperlink> - start index: 10 - end index: 22 - anchors: http://www.gtk.org - <AtkHyperlink> - start index: 27 - end index: 36 - anchors: http://www.google.com - unnamed-GtkLabelAccessibleLinkImpl-1 - "link" - parent: label1 - state: enabled focusable focused multi-line sensitive showing visible has-tooltip - <AtkHyperlinkImpl> - <AtkHyperlink> - start index: 10 - end index: 22 - anchors: http://www.gtk.org - unnamed-GtkLabelAccessibleLinkImpl-2 - "link" - parent: label1 - state: enabled focusable multi-line sensitive showing visible has-tooltip - <AtkHyperlinkImpl> - <AtkHyperlink> - start index: 27 - end index: 36 - anchors: http://www.google.com diff --git a/testsuite/a11y/label.ui b/testsuite/a11y/label.ui deleted file mode 100644 index 6ad282a2c0..0000000000 --- a/testsuite/a11y/label.ui +++ /dev/null @@ -1,12 +0,0 @@ - -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkLabel" id="label1"> - <property name="label">Go to the <a href="http://www.gtk.org" title="<i>Our</i> website">GTK+ website</a> or <small>><a href="http://www.google.com">google it</a></small></property> - <property name="use-markup">True</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/link.txt b/testsuite/a11y/link.txt deleted file mode 100644 index 9438046142..0000000000 --- a/testsuite/a11y/link.txt +++ /dev/null @@ -1,37 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button1 - "push button" - parent: window1 - index: 0 - name: Hello World! - state: enabled focusable focused sensitive showing visible visited has-tooltip - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - <AtkHyperlinkImpl> - <AtkHyperlink> - start index: 0 - end index: 0 - anchors: http://www.gtk.org diff --git a/testsuite/a11y/link.ui b/testsuite/a11y/link.ui deleted file mode 100644 index b91f8af622..0000000000 --- a/testsuite/a11y/link.ui +++ /dev/null @@ -1,14 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkLinkButton" id="button1"> - <property name="label" translatable="yes">Hello World!</property> - <property name="visible">True</property> - <property name="uri">http://www.gtk.org</property> - <property name="visited">True</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/listbox.txt b/testsuite/a11y/listbox.txt deleted file mode 100644 index 86ff7d0f1a..0000000000 --- a/testsuite/a11y/listbox.txt +++ /dev/null @@ -1,192 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - box1 - "filler" - parent: window1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - listbox1 - "list box" - parent: box1 - index: 0 - state: enabled sensitive showing visible manages-descendants - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkSelection> - unnamed-GtkListBoxRowAccessible-1 - "list item" - parent: listbox1 - index: 0 - state: enabled focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - row1 - "label" - parent: unnamed-GtkListBoxRowAccessible-1 - index: 0 - name: Row One - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Row One - character count: 7 - caret offset: -1 - 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 - <AtkHypertext> - unnamed-GtkListBoxRowAccessible-2 - "list item" - parent: listbox1 - index: 1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - row2 - "label" - parent: unnamed-GtkListBoxRowAccessible-2 - index: 0 - name: Row Two - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Row Two - character count: 7 - caret offset: -1 - 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 - <AtkHypertext> - listbox2 - "list box" - parent: box1 - index: 1 - state: enabled sensitive showing visible manages-descendants - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkSelection> - unnamed-GtkListBoxRowAccessible-3 - "list item" - parent: listbox2 - index: 0 - state: enabled selectable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - row3 - "label" - parent: unnamed-GtkListBoxRowAccessible-3 - index: 0 - name: Row Tree - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Row Tree - character count: 8 - caret offset: -1 - 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 - <AtkHypertext> diff --git a/testsuite/a11y/listbox.ui b/testsuite/a11y/listbox.ui deleted file mode 100644 index f87c506018..0000000000 --- a/testsuite/a11y/listbox.ui +++ /dev/null @@ -1,40 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkBox" id="box1"> - <property name="visible">True</property> - <child> - <object class="GtkListBox" id="listbox1"> - <property name="visible">True</property> - <property name="selection-mode">none</property> - <child> - <object class="GtkLabel" id="row1"> - <property name="visible">True</property> - <property name="label">Row One</property> - </object> - </child> - <child> - <object class="GtkLabel" id="row2"> - <property name="visible">True</property> - <property name="label">Row Two</property> - </object> - </child> - </object> - </child> - <child> - <object class="GtkListBox" id="listbox2"> - <property name="visible">True</property> - <child> - <object class="GtkLabel" id="row3"> - <property name="visible">True</property> - <property name="label">Row Tree</property> - </object> - </child> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/lockbutton.txt b/testsuite/a11y/lockbutton.txt deleted file mode 100644 index b6edba8026..0000000000 --- a/testsuite/a11y/lockbutton.txt +++ /dev/null @@ -1,34 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button1 - "push button" - parent: window1 - index: 0 - name: Lock - description: Dialog is unlocked. -Click to prevent further changes - state: enabled focusable focused sensitive showing visible has-tooltip - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button diff --git a/testsuite/a11y/lockbutton.ui b/testsuite/a11y/lockbutton.ui deleted file mode 100644 index 6845ca0fea..0000000000 --- a/testsuite/a11y/lockbutton.ui +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkLockButton" id="button1"> - <property name="visible">True</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/menubutton.txt b/testsuite/a11y/menubutton.txt deleted file mode 100644 index c52d798690..0000000000 --- a/testsuite/a11y/menubutton.txt +++ /dev/null @@ -1,26 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - menubutton - "toggle button" - parent: window1 - index: 0 - name: Menu - state: enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 diff --git a/testsuite/a11y/menubutton.ui b/testsuite/a11y/menubutton.ui deleted file mode 100644 index a0423d57f7..0000000000 --- a/testsuite/a11y/menubutton.ui +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkPopover" id="menu"> - <child> - <object class="GtkButton" id="button"> - <property name="label" translatable="yes">_New</property> - <property name="use_underline">True</property> - </object> - </child> - </object> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkMenuButton" id="menubutton"> - <property name="popover">menu</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/menubutton2.txt b/testsuite/a11y/menubutton2.txt deleted file mode 100644 index c52d798690..0000000000 --- a/testsuite/a11y/menubutton2.txt +++ /dev/null @@ -1,26 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - menubutton - "toggle button" - parent: window1 - index: 0 - name: Menu - state: enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 diff --git a/testsuite/a11y/menubutton2.ui b/testsuite/a11y/menubutton2.ui deleted file mode 100644 index df1f590cc3..0000000000 --- a/testsuite/a11y/menubutton2.ui +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <menu id="menu"> - <section> - <item> - <attribute name="label">New</attribute> - </item> - </section> - </menu> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkMenuButton" id="menubutton"> - <property name="menu-model">menu</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/meson.build b/testsuite/a11y/meson.build deleted file mode 100644 index 4bc3c339a0..0000000000 --- a/testsuite/a11y/meson.build +++ /dev/null @@ -1,156 +0,0 @@ -testexecdir = join_paths(installed_test_bindir, 'a11y') -testdatadir = join_paths(installed_test_datadir, 'a11y') - -a11y_state_tests = [ - 'about', - 'accessible-name', - 'actionbar', - 'assistant', - #'buttons', - 'calendar', - 'colorchooser', - 'combos', - 'entries', - 'expander', - 'headerbar', - 'hello-world', - 'iconview', - 'infobar', - 'label', - 'link', - 'listbox', - 'lockbutton', - 'menubutton', - 'menubutton2', - 'messagedialog', - 'mnemonic', - 'notebook', - 'paned', - 'pickers', - 'placeholder-text', - 'progress', - 'range', - 'scale-drawvalue', - 'spinner', - 'statusbar', - 'stack', - 'text', - 'tooltips', - 'tree', -] - -a11y_dump_bin = executable('accessibility-dump', - 'accessibility-dump.c', - c_args: common_cflags, - dependencies: libgtk_dep, - install: get_option('install-tests'), - install_dir: testexecdir, -) - -foreach t: a11y_state_tests - ui_path = join_paths(meson.current_source_dir(), t + '.ui') - test (t + ' state', - a11y_dump_bin, - args: [ '--tap', '-k', ui_path ], - protocol: 'tap', - env: [ - 'G_TEST_SRCDIR=@0@'.format(meson.current_source_dir()), - 'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()), - ], - suite: 'a11y', - ) -endforeach - -a11y_tests = [ - 'tree-performance', - 'text', - 'children', - 'derive', - 'value', - 'misc', - 'tree-relationships', - 'util', -] - -foreach t: a11y_tests - test_prefix = 'a11y' - - test (t, - executable (t, '@0@.c'.format(t), - install: get_option('install-tests'), - c_args: common_cflags, - install_dir: testexecdir, - dependencies: libgtk_dep), - args: [ '--tap', '-k', ], - protocol: 'tap', - timeout: 120, - env: [ - 'G_TEST_SRCDIR=@0@'.format(meson.current_source_dir()), - 'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()), - ], - suite: 'a11y') -endforeach - -a11y_installed_tests = [ - 'tests.test', - 'children.test', - 'tree.test', - 'value.test', - 'derive.test', - 'text.test', - 'util.test', - 'misc.test', -] - -installed_test_data = [ - 'about.ui', 'about.txt', - 'accessible-name.ui', 'accessible-name.txt', - 'actionbar.ui', 'actionbar.txt', - 'assistant.ui', 'assistant.txt', - 'buttons.ui', 'buttons.txt', - 'calendar.ui', 'calendar.txt', - 'colorchooser.ui', 'colorchooser.txt', - 'combos.ui', 'combos.txt', - 'entries.ui', 'entries.txt', - 'expander.ui', 'expander.txt', - 'headerbar.ui', 'headerbar.txt', - 'hello-world.ui', 'hello-world.txt', - 'iconview.ui', 'iconview.txt', - 'infobar.ui', 'infobar.txt', - 'label.ui', 'label.txt', - 'link.ui', 'link.txt', - 'listbox.ui', 'listbox.txt', - 'lockbutton.ui', 'lockbutton.txt', - 'menubutton.ui', 'menubutton.txt', - 'menubutton2.ui', 'menubutton2.txt', - 'messagedialog.ui', 'messagedialog.txt', - 'mnemonic.ui', 'mnemonic.txt', - 'notebook.ui', 'notebook.txt', - 'paned.ui', 'paned.txt', - 'pickers.ui', 'pickers.txt', - 'placeholder-text.ui', 'placeholder-text.txt', - 'progress.ui', 'progress.txt', - 'range.ui', 'range.txt', - 'scale-drawvalue.ui', 'scale-drawvalue.txt', - 'spinner.ui', 'spinner.txt', - 'stack.ui', 'stack.txt', - 'statusbar.ui', 'statusbar.txt', - 'text.ui', 'text.txt', - 'tooltips.ui', 'tooltips.txt', - 'tree.ui', 'tree.txt', -] - -if get_option('install-tests') - test_cdata = configuration_data() - test_cdata.set('libexecdir', gtk_libexecdir) - - foreach t: a11y_installed_tests - configure_file(input: '@0@.in'.format(t), - output: t, - configuration: test_cdata, - install: true, - install_dir: testdatadir) - endforeach - - install_data(installed_test_data, install_dir: testexecdir) -endif diff --git a/testsuite/a11y/messagedialog.txt b/testsuite/a11y/messagedialog.txt deleted file mode 100644 index e92ce27553..0000000000 --- a/testsuite/a11y/messagedialog.txt +++ /dev/null @@ -1,192 +0,0 @@ -window1 - "alert" - index: 0 - name: Information - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "filler" - parent: window1 - index: 1 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - - "label" - parent: unnamed-GtkContainerAccessible-0 - index: 0 - name: - state: enabled focusable multi-line sensitive - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: - character count: 0 - caret offset: -1 - 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 - <AtkHypertext> - ___object_1___ - "filler" - parent: window1 - index: 0 - state: enabled sensitive showing vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - dialog-vbox1 - "filler" - parent: ___object_1___ - index: 0 - state: enabled sensitive showing vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - box - "filler" - parent: dialog-vbox1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - message_area - "filler" - parent: box - index: 0 - state: enabled sensitive showing vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - label - "label" - parent: message_area - index: 0 - name: Information - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Information - character count: 11 - caret offset: -1 - 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 - <AtkHypertext> - secondary_label - "label" - parent: message_area - index: 1 - name: More Information - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: More Information - character count: 16 - caret offset: -1 - 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 - <AtkHypertext> - action_box - "filler" - parent: ___object_1___ - index: 1 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - action_area - "filler" - parent: action_box - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 diff --git a/testsuite/a11y/messagedialog.ui b/testsuite/a11y/messagedialog.ui deleted file mode 100644 index a6a080e716..0000000000 --- a/testsuite/a11y/messagedialog.ui +++ /dev/null @@ -1,10 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkMessageDialog" id="window1"> - <property name="visible">True</property> - <property name="message-type">info</property> - <property name="text" translatable="yes">Information</property> - <property name="secondary-text" translatable="yes">More Information</property> - </object> -</interface> diff --git a/testsuite/a11y/misc.c b/testsuite/a11y/misc.c deleted file mode 100644 index aabbf3f26a..0000000000 --- a/testsuite/a11y/misc.c +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (C) 2011 Red Hat Inc. - * - * Author: - * Matthias Clasen <mclasen@redhat.com> - * - * 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, see <http://www.gnu.org/licenses/>. - */ - -#include <gtk/gtk.h> - -static void -test_popover_parent (void) -{ - GtkWidget *w; - GtkWidget *p; - AtkObject *a; - - /*http://bugzilla.gnome.org/show_bug.cgi?id=733923 */ - - w = gtk_entry_new (); - - p = gtk_popover_new (); - a = gtk_widget_get_accessible (p); - - g_assert (a != NULL); - g_assert (atk_object_get_parent (a) == NULL); - - gtk_widget_set_parent (p, w); - - g_assert (atk_object_get_parent (a) != NULL); - - gtk_widget_unparent (w); - g_object_unref (g_object_ref_sink (p)); -} - -int -main (int argc, char *argv[]) -{ - gtk_test_init (&argc, &argv, NULL); - - g_test_add_func ("/popover/accessible-parent", test_popover_parent); - - return g_test_run (); -} - diff --git a/testsuite/a11y/misc.test.in b/testsuite/a11y/misc.test.in deleted file mode 100644 index dcfece4c99..0000000000 --- a/testsuite/a11y/misc.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/a11y/misc -k --tap -Type=session -Output=TAP diff --git a/testsuite/a11y/mnemonic.txt b/testsuite/a11y/mnemonic.txt deleted file mode 100644 index 7071856501..0000000000 --- a/testsuite/a11y/mnemonic.txt +++ /dev/null @@ -1,110 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - box1 - "filler" - parent: window1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - label1 - "label" - parent: box1 - index: 0 - name: Entry: - label-for: entry1 - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Entry: - character count: 6 - caret offset: -1 - 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 - <AtkHypertext> - entry1 - "text" - parent: box1 - index: 1 - labelled-by: label1 - state: editable enabled focusable focused sensitive showing single-line visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: text - character count: 4 - caret offset: 4 - selection 0: (0, 4) text - 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 - <AtkAction> - action 0 name: activate - action 0 description: Activates the entry - action 0 keybinding: <Alt>e diff --git a/testsuite/a11y/mnemonic.ui b/testsuite/a11y/mnemonic.ui deleted file mode 100644 index 2e68cf8122..0000000000 --- a/testsuite/a11y/mnemonic.ui +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkBox" id="box1"> - <child> - <object class="GtkLabel" id="label1"> - <property name="label" translatable="yes">_Entry:</property> - <property name="visible">True</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">entry1</property> - </object> - </child> - <child> - <object class="GtkEntry" id="entry1"> - <property name="text" translatable="yes">text</property> - <property name="visible">True</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/notebook.txt b/testsuite/a11y/notebook.txt deleted file mode 100644 index 66077869d9..0000000000 --- a/testsuite/a11y/notebook.txt +++ /dev/null @@ -1,75 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - notebook1 - "page tab list" - parent: window1 - index: 0 - state: enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkSelection> - selected children: unnamed-GtkNotebookPageAccessible-1 - unnamed-GtkNotebookPageAccessible-1 - "page tab" - parent: notebook1 - index: 0 - name: Tab 1 - state: enabled focusable multi-line selectable selected sensitive showing visible - <AtkComponent> - layer: widget - alpha: 1 - page1 - "push button" - index: 0 - name: Yes - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - unnamed-GtkNotebookPageAccessible-2 - "page tab" - parent: notebook1 - index: 1 - name: Tab 2 - state: enabled focusable multi-line selectable sensitive showing visible - <AtkComponent> - layer: widget - alpha: 1 - page2 - "push button" - index: 0 - name: No - state: enabled focusable sensitive visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button diff --git a/testsuite/a11y/notebook.ui b/testsuite/a11y/notebook.ui deleted file mode 100644 index d37be60088..0000000000 --- a/testsuite/a11y/notebook.ui +++ /dev/null @@ -1,36 +0,0 @@ -<interface> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkNotebook" id="notebook1"> - <child> - <object class="GtkNotebookPage"> - <property name="child"> - <object class="GtkButton" id="page1"> - <property name="label" translatable="yes">Yes</property> - </object> - </property> - <property name="tab"> - <object class="GtkLabel" id="tab1"> - <property name="label" translatable="yes">Tab 1</property> - </object> - </property> - </object> - </child> - <child> - <object class="GtkNotebookPage"> - <property name="child"> - <object class="GtkButton" id="page2"> - <property name="label" translatable="yes">No</property> - </object> - </property> - <property name="tab"> - <object class="GtkLabel" id="tab2"> - <property name="label" translatable="yes">Tab 2</property> - </object> - </property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/paned.txt b/testsuite/a11y/paned.txt deleted file mode 100644 index 26615c026c..0000000000 --- a/testsuite/a11y/paned.txt +++ /dev/null @@ -1,109 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - paned1 - "split pane" - parent: window1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: 0.000000 - maximum value: 219.000000 - current value: 26.000000 - label1 - "label" - parent: paned1 - index: 0 - name: Left - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Left - character count: 4 - caret offset: -1 - 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 - <AtkHypertext> - label2 - "label" - parent: paned1 - index: 1 - name: Right - state: enabled focusable multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Right - character count: 5 - caret offset: -1 - 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 - <AtkHypertext> diff --git a/testsuite/a11y/paned.ui b/testsuite/a11y/paned.ui deleted file mode 100644 index 190c41f6fd..0000000000 --- a/testsuite/a11y/paned.ui +++ /dev/null @@ -1,18 +0,0 @@ -<interface> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkPaned" id="paned1"> - <child> - <object class="GtkLabel" id="label1"> - <property name="label" translatable="yes">Left</property> - </object> - </child> - <child> - <object class="GtkLabel" id="label2"> - <property name="label" translatable="yes">Right</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/pickers.txt b/testsuite/a11y/pickers.txt deleted file mode 100644 index 9b86178e95..0000000000 --- a/testsuite/a11y/pickers.txt +++ /dev/null @@ -1,52 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - grid1 - "panel" - parent: window1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button1 - "unknown" - parent: grid1 - index: 0 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button2 - "unknown" - parent: grid1 - index: 1 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button3 - "unknown" - parent: grid1 - index: 2 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 diff --git a/testsuite/a11y/pickers.ui b/testsuite/a11y/pickers.ui deleted file mode 100644 index 5e85c546a1..0000000000 --- a/testsuite/a11y/pickers.ui +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkGrid" id="grid1"> - <child> - <object class="GtkAppChooserButton" id="button1"> - <layout> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkColorButton" id="button2"> - <layout> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkFontButton" id="button3"> - <layout> - <property name="left_attach">2</property> - <property name="top_attach">0</property> - </layout> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/placeholder-text.txt b/testsuite/a11y/placeholder-text.txt deleted file mode 100644 index 5097da49a4..0000000000 --- a/testsuite/a11y/placeholder-text.txt +++ /dev/null @@ -1,151 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - box1 - "filler" - parent: window1 - index: 0 - state: enabled sensitive showing vertical visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - entry1 - "text" - parent: box1 - index: 0 - state: editable enabled focusable focused sensitive showing single-line visible - toolkit: gtk - placeholder-text: Subject or Addresses contain - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: - character count: 0 - caret offset: -1 - 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 - <AtkAction> - action 0 name: activate - action 0 description: Activates the entry - entry2 - "text" - parent: box1 - index: 1 - state: editable enabled focusable sensitive showing single-line visible - toolkit: gtk - placeholder-text: Message contains - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Some text - character count: 9 - caret offset: -1 - 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 - <AtkAction> - action 0 name: activate - action 0 description: Activates the entry - entry3 - "text" - parent: box1 - index: 2 - state: editable enabled focusable sensitive showing single-line visible - toolkit: gtk - placeholder-text: Body contains - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: - character count: 0 - caret offset: -1 - 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 - <AtkAction> - action 0 name: activate - action 0 description: Activates the entry diff --git a/testsuite/a11y/placeholder-text.ui b/testsuite/a11y/placeholder-text.ui deleted file mode 100644 index fef5966f85..0000000000 --- a/testsuite/a11y/placeholder-text.ui +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkBox" id="box1"> - <property name="orientation">vertical</property> - <child> - <object class="GtkEntry" id="entry1"> - <property name="placeholder_text">Subject or Addresses contain</property> - </object> - </child> - <child> - <object class="GtkEntry" id="entry2"> - <property name="text" translatable="yes">Some text</property> - <property name="placeholder_text">Message contains</property> - </object> - </child> - <child> - <object class="GtkEntry" id="entry3"> - <property name="placeholder_text">Body contains</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/progress.txt b/testsuite/a11y/progress.txt deleted file mode 100644 index 3248138a23..0000000000 --- a/testsuite/a11y/progress.txt +++ /dev/null @@ -1,29 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - progress1 - "progress bar" - parent: window1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: 0.000000 - maximum value: 1.000000 - current value: 0.500000 diff --git a/testsuite/a11y/progress.ui b/testsuite/a11y/progress.ui deleted file mode 100644 index b87c182995..0000000000 --- a/testsuite/a11y/progress.ui +++ /dev/null @@ -1,14 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkProgressBar" id="progress1"> - <property name="visible">True</property> - <property name="fraction">0.5</property> - <property name="text">Good progress!</property> - <property name="show-text">True</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/range.txt b/testsuite/a11y/range.txt deleted file mode 100644 index 092f810df8..0000000000 --- a/testsuite/a11y/range.txt +++ /dev/null @@ -1,52 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - grid1 - "panel" - parent: window1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - scale1 - "slider" - parent: grid1 - index: 0 - description: 45.5 - state: enabled focusable focused horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: 0.500000 - maximum value: 99.500000 - current value: 45.500000 - scrollbar1 - "scroll bar" - parent: grid1 - index: 1 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: 0.500000 - maximum value: 99.500000 - current value: 45.500000 diff --git a/testsuite/a11y/range.ui b/testsuite/a11y/range.ui deleted file mode 100644 index 2cb26c30e0..0000000000 --- a/testsuite/a11y/range.ui +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <object class="GtkAdjustment" id="adjustment1"> - <property name="lower">0.5</property> - <property name="upper">99.5</property> - <property name="value">45.5</property> - <property name="step-increment">0.5</property> - <property name="page-increment">5.0</property> - </object> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkGrid" id="grid1"> - <child> - <object class="GtkScale" id="scale1"> - <property name="adjustment">adjustment1</property> - <layout> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </layout> - </object> - </child> - <child> - <object class="GtkScrollbar" id="scrollbar1"> - <property name="adjustment">adjustment1</property> - <layout> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </layout> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/scale-drawvalue.txt b/testsuite/a11y/scale-drawvalue.txt deleted file mode 100644 index f64903d22a..0000000000 --- a/testsuite/a11y/scale-drawvalue.txt +++ /dev/null @@ -1,30 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - scale1 - "slider" - parent: window1 - index: 0 - description: -42.0 - state: enabled focusable focused horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkValue> - minimum value: -100.000000 - maximum value: 100.000000 - current value: -42.000000 diff --git a/testsuite/a11y/scale-drawvalue.ui b/testsuite/a11y/scale-drawvalue.ui deleted file mode 100644 index 82823e548a..0000000000 --- a/testsuite/a11y/scale-drawvalue.ui +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkAdjustment" id="adjustment1"> - <property name="lower">-100</property> - <property name="upper">100</property> - <property name="value">-42</property> - <property name="step_increment">1</property> - <property name="page_increment">10</property> - </object> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkScale" id="scale1"> - <property name="width-request">100</property> - <property name="visible">True</property> - <property name="adjustment">adjustment1</property> - <property name="round_digits">1</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/spinner.txt b/testsuite/a11y/spinner.txt deleted file mode 100644 index 20dbdc7228..0000000000 --- a/testsuite/a11y/spinner.txt +++ /dev/null @@ -1,30 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - spinner1 - "animation" - parent: window1 - index: 0 - name: Spinner - description: Provides visual indication of progress - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: 220 x 68 - image description: (null) diff --git a/testsuite/a11y/spinner.ui b/testsuite/a11y/spinner.ui deleted file mode 100644 index 6f8be8cf3c..0000000000 --- a/testsuite/a11y/spinner.ui +++ /dev/null @@ -1,12 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkSpinner" id="spinner1"> - <property name="visible">True</property> - <property name="spinning">True</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/stack.txt b/testsuite/a11y/stack.txt deleted file mode 100644 index 61e2ca1eaf..0000000000 --- a/testsuite/a11y/stack.txt +++ /dev/null @@ -1,91 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - box1 - "filler" - parent: window1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - stackswitcher1 - "filler" - parent: box1 - index: 0 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkToggleButtonAccessible-1 - "toggle button" - parent: stackswitcher1 - index: 0 - name: Page 1 - state: checked enabled focusable focused sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - unnamed-GtkToggleButtonAccessible-2 - "toggle button" - parent: stackswitcher1 - index: 1 - name: Page 2 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - stack1 - "panel" - parent: box1 - index: 1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - page1 - "push button" - parent: stack1 - index: 0 - name: Yes - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button diff --git a/testsuite/a11y/stack.ui b/testsuite/a11y/stack.ui deleted file mode 100644 index 4aeb63d6cd..0000000000 --- a/testsuite/a11y/stack.ui +++ /dev/null @@ -1,39 +0,0 @@ -<interface> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkBox" id="box1"> - <child> - <object class="GtkStackSwitcher" id="stackswitcher1"> - <property name="stack">stack1</property> - </object> - </child> - <child> - <object class="GtkStack" id="stack1"> - <child> - <object class="GtkStackPage"> - <property name="name">page1</property> - <property name="title">Page 1</property> - <property name="child"> - <object class="GtkButton" id="page1"> - <property name="label" translatable="yes">Yes</property> - </object> - </property> - </object> - </child> - <child> - <object class="GtkStackPage"> - <property name="name">page2</property> - <property name="title">Page 2</property> - <property name="child"> - <object class="GtkButton" id="page2"> - <property name="label" translatable="yes">No</property> - </object> - </property> - </object> - </child> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/state/focus1.in b/testsuite/a11y/state/focus1.in deleted file mode 100644 index cfe3a315d0..0000000000 --- a/testsuite/a11y/state/focus1.in +++ /dev/null @@ -1,8 +0,0 @@ -record entry1 entry2 -states focused -show window1 -focus entry1 -wait -focus entry2 -wait -destroy window1 diff --git a/testsuite/a11y/state/focus1.out b/testsuite/a11y/state/focus1.out deleted file mode 100644 index 89c56433eb..0000000000 --- a/testsuite/a11y/state/focus1.out +++ /dev/null @@ -1,4 +0,0 @@ -entry1 focused 1 -entry1 focused 0 -entry2 focused 1 -entry2 focused 0 diff --git a/testsuite/a11y/state/focus1.ui b/testsuite/a11y/state/focus1.ui deleted file mode 100644 index 48179e93c1..0000000000 --- a/testsuite/a11y/state/focus1.ui +++ /dev/null @@ -1,22 +0,0 @@ -<interface> - <object class='GtkWindow' id='window1'> - <property name='visible'>True</property> - <child> - <object class='GtkBox' id='box1'> - <property name='visible'>True</property> - <child> - <object class='GtkEntry' id='entry1'> - <property name='visible'>True</property> - <property name='text'>entry1</property> - </object> - </child> - <child> - <object class='GtkEntry' id='entry2'> - <property name='visible'>True</property> - <property name='text'>entry2</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/state/focus2.in b/testsuite/a11y/state/focus2.in deleted file mode 100644 index d66cf175f9..0000000000 --- a/testsuite/a11y/state/focus2.in +++ /dev/null @@ -1,9 +0,0 @@ -record entry1 entry2 window1 window2 -states focused active -show window1 -show window2 -focus entry1 -wait -focus entry2 -wait -destroy window1 window2 diff --git a/testsuite/a11y/state/focus2.out b/testsuite/a11y/state/focus2.out deleted file mode 100644 index 29202463c4..0000000000 --- a/testsuite/a11y/state/focus2.out +++ /dev/null @@ -1,7 +0,0 @@ -entry1 focused 1 -window1 active 1 -entry1 focused 0 -window1 active 0 -entry2 focused 1 -window2 active 1 -entry2 focused 0 diff --git a/testsuite/a11y/state/focus2.ui b/testsuite/a11y/state/focus2.ui deleted file mode 100644 index 2dda5ecc63..0000000000 --- a/testsuite/a11y/state/focus2.ui +++ /dev/null @@ -1,20 +0,0 @@ -<interface> - <object class='GtkWindow' id='window1'> - <property name='visible'>True</property> - <child> - <object class='GtkEntry' id='entry1'> - <property name='visible'>True</property> - <property name='text'>entry1</property> - </object> - </child> - </object> - <object class='GtkWindow' id='window2'> - <property name='visible'>True</property> - <child> - <object class='GtkEntry' id='entry2'> - <property name='visible'>True</property> - <property name='text'>entry2</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/state/state-record.c b/testsuite/a11y/state/state-record.c deleted file mode 100644 index b1f1292336..0000000000 --- a/testsuite/a11y/state/state-record.c +++ /dev/null @@ -1,383 +0,0 @@ -/* - * Copyright (C) 2011 Red Hat Inc. - * - * Author: - * Matthias Clasen <mclasen@redhat.com> - * - * 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, see <http://www.gnu.org/licenses/>. - */ - -#include "config.h" -#include <glib/gstdio.h> -#include <gtk/gtk.h> -#include <string.h> - -static char **states; - -static void -record_state_change (AtkObject *accessible, - const char *state, - gboolean set, - GString *string) -{ - GtkWidget *w; - const char *name; - - if (states) - { - int i; - - for (i = 0; states[i]; i++) - { - if (strcmp (states[i], state) == 0) - break; - } - if (states[i] == NULL) - return; - } - - w = gtk_accessible_get_widget (GTK_ACCESSIBLE (accessible)); - name = gtk_buildable_get_name (GTK_BUILDABLE (w)); - g_string_append_printf (string, "%s %s %d\n", name, state, set); -} - -static gboolean -stop (gpointer data) -{ - GMainLoop *loop = data; - - g_main_loop_quit (loop); - - return G_SOURCE_CONTINUE; -} - -static void -do_action (GtkBuilder *builder, const char *action, GString *string) -{ - char **parts; - int len; - int i; - - parts = g_strsplit (action, " ", 0); - len = g_strv_length (parts); - if (len > 0) - { - if (strcmp (parts[0], "record") == 0) - { - for (i = 1; i < len; i++) - { - GObject *o, *a; - - o = gtk_builder_get_object (builder, parts[i]); - if (ATK_IS_OBJECT (o)) - a = o; - else if (GTK_IS_WIDGET (o)) - a = G_OBJECT (gtk_widget_get_accessible (GTK_WIDGET (o))); - else - g_assert_not_reached (); - g_signal_connect (a, "state-change", G_CALLBACK (record_state_change), string); - } - } - else if (strcmp (parts[0], "states") == 0) - { - g_strfreev (states); - states = g_strdupv (parts); - } - else if (strcmp (parts[0], "destroy") == 0) - { - for (i = 1; i < len; i++) - { - GObject *o; - - o = gtk_builder_get_object (builder, parts[i]); - g_object_unref (o); - } - } - else if (strcmp (parts[0], "show") == 0) - { - GObject *o; - - o = gtk_builder_get_object (builder, parts[1]); - gtk_widget_show (GTK_WIDGET (o)); - } - else if (strcmp (parts[0], "focus") == 0) - { - GObject *o; - - o = gtk_builder_get_object (builder, parts[1]); - gtk_widget_grab_focus (GTK_WIDGET (o)); - } - else if (strcmp (parts[0], "wait") == 0) - { - GMainLoop *loop; - gulong id; - - loop = g_main_loop_new (NULL, FALSE); - id = g_timeout_add (1000, stop, loop); - g_main_loop_run (loop); - g_source_remove (id); - g_main_loop_unref (loop); - } - } - g_free (parts); -} - -static void -record_events (const char *ui_file, - const char *in_file, - GString *string) -{ - GtkBuilder *builder; - GError *error; - char *contents; - char **actions; - int i, len; - - builder = gtk_builder_new (); - error = NULL; - gtk_builder_add_from_file (builder, ui_file, &error); - g_assert_no_error (error); - - g_file_get_contents (in_file, &contents, NULL, &error); - g_assert_no_error (error); - actions = g_strsplit (contents, "\n", 0); - - len = g_strv_length (actions); - for (i = 0; i < len; i++) - do_action (builder, actions[i], string); - - g_object_unref (builder); - - g_free (contents); - g_strfreev (actions); -} - -static char * -get_test_file (const char *test_file, - const char *extension, - gboolean must_exist) -{ - GString *file = g_string_new (NULL); - - if (g_str_has_suffix (test_file, ".ui")) - g_string_append_len (file, test_file, strlen (test_file) - strlen (".ui")); - else - g_string_append (file, test_file); - - g_string_append (file, extension); - - if (must_exist && - !g_file_test (file->str, G_FILE_TEST_EXISTS)) - { - g_string_free (file, TRUE); - return NULL; - } - - return g_string_free (file, FALSE); -} - -static char * -diff_with_file (const char *file1, - char *text, - gssize len, - GError **error) -{ - const char *command[] = { "diff", "-u", file1, NULL, NULL }; - char *diff, *tmpfile; - int fd; - - diff = NULL; - - if (len < 0) - len = strlen (text); - - /* write the text buffer to a temporary file */ - fd = g_file_open_tmp (NULL, &tmpfile, error); - if (fd < 0) - return NULL; - - if (write (fd, text, len) != (int) len) - { - close (fd); - g_set_error (error, - G_FILE_ERROR, G_FILE_ERROR_FAILED, - "Could not write data to temporary file '%s'", tmpfile); - goto done; - } - close (fd); - command[3] = tmpfile; - - /* run diff command */ - g_spawn_sync (NULL, - (char **) command, - NULL, - G_SPAWN_SEARCH_PATH, - NULL, NULL, - &diff, - NULL, NULL, - error); -done: - g_unlink (tmpfile); - g_free (tmpfile); - - return diff; -} - -static void -test_ui_file (GFile *file) -{ - char *ui_file, *in_file, *out_file; - GString *record; - GError *error = NULL; - - ui_file = g_file_get_path (file); - in_file = get_test_file (ui_file, ".in", TRUE); - out_file = get_test_file (ui_file, ".out", TRUE); - record = g_string_new (""); - - record_events (ui_file, in_file, record); - - if (out_file) - { - char *diff = diff_with_file (out_file, record->str, record->len, &error); - g_assert_no_error (error); - - if (diff && diff[0]) - { - g_printerr ("Contents don't match expected contents:\n%s", diff); - g_test_fail (); - g_free (diff); - } - } - else if (record->str[0]) - { - g_test_message ("Expected a reference file:\n%s", record->str); - g_test_fail (); - } - - g_string_free (record, TRUE); - g_free (in_file); - g_free (out_file); - g_free (ui_file); -} - -static void -add_test_for_file (GFile *file) -{ - g_test_add_vtable (g_file_get_path (file), - 0, - g_object_ref (file), - (GTestFixtureFunc) NULL, - (GTestFixtureFunc) test_ui_file, - (GTestFixtureFunc) g_object_unref); -} - -static int -compare_files (gconstpointer a, gconstpointer b) -{ - GFile *file1 = G_FILE (a); - GFile *file2 = G_FILE (b); - char *path1, *path2; - int result; - - path1 = g_file_get_path (file1); - path2 = g_file_get_path (file2); - - result = strcmp (path1, path2); - - g_free (path1); - g_free (path2); - - return result; -} - -static void -add_tests_for_files_in_directory (GFile *dir) -{ - GFileEnumerator *enumerator; - GFileInfo *info; - GList *files; - GError *error = NULL; - - enumerator = g_file_enumerate_children (dir, G_FILE_ATTRIBUTE_STANDARD_NAME, 0, NULL, &error); - g_assert_no_error (error); - files = NULL; - - while ((info = g_file_enumerator_next_file (enumerator, NULL, &error))) - { - const char *filename; - - filename = g_file_info_get_name (info); - - if (!g_str_has_suffix (filename, ".ui")) - { - g_object_unref (info); - continue; - } - - files = g_list_prepend (files, g_file_get_child (dir, filename)); - - g_object_unref (info); - } - - g_assert_no_error (error); - g_object_unref (enumerator); - - files = g_list_sort (files, compare_files); - g_list_foreach (files, (GFunc) add_test_for_file, NULL); - g_list_free_full (files, g_object_unref); -} - -static char *arg_base_dir = NULL; - -static const GOptionEntry test_args[] = { - { "directory", 'd', 0, G_OPTION_ARG_FILENAME, &arg_base_dir, - "Directory to run tests from", "DIR" }, - { NULL } -}; - -int -main (int argc, char *argv[]) -{ - const char *basedir; - GFile *dir; - GError *error = NULL; - GOptionContext *context; - - context = g_option_context_new ("- run GTK state tests"); - g_option_context_add_main_entries (context, test_args, NULL); - g_option_context_set_ignore_unknown_options (context, TRUE); - - if (!g_option_context_parse (context, &argc, &argv, &error)) - { - g_print ("option parsing failed: %s\n", error->message); - return FALSE; - } - - g_option_context_free (context); - - gtk_test_init (&argc, &argv, NULL); - - if (arg_base_dir) - basedir = arg_base_dir; - else - basedir = g_test_get_dir (G_TEST_DIST); - - dir = g_file_new_for_path (basedir); - add_tests_for_files_in_directory (dir); - g_object_unref (dir); - - return g_test_run (); -} - diff --git a/testsuite/a11y/statusbar.txt b/testsuite/a11y/statusbar.txt deleted file mode 100644 index 69af09000d..0000000000 --- a/testsuite/a11y/statusbar.txt +++ /dev/null @@ -1,26 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - statusbar1 - "statusbar" - parent: window1 - index: 0 - name: - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 diff --git a/testsuite/a11y/statusbar.ui b/testsuite/a11y/statusbar.ui deleted file mode 100644 index b704061811..0000000000 --- a/testsuite/a11y/statusbar.ui +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkStatusbar" id="statusbar1"> - <property name="visible">True</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/testfocus.c b/testsuite/a11y/testfocus.c deleted file mode 100644 index 2360f47c32..0000000000 --- a/testsuite/a11y/testfocus.c +++ /dev/null @@ -1,118 +0,0 @@ -#include <gtk/gtk.h> - -static const char * -get_name (gpointer obj) -{ - GtkWidget *widget; - if (obj == NULL) - return "(nil)"; - else if (GTK_IS_WIDGET (obj)) - widget = GTK_WIDGET (obj); - else if (GTK_IS_ACCESSIBLE (obj)) - widget = gtk_accessible_get_widget (GTK_ACCESSIBLE (obj)); - else - return "OOPS"; - if (GTK_IS_BUILDABLE (widget)) - return gtk_buildable_get_name (GTK_BUILDABLE (widget)); - else - return G_OBJECT_TYPE_NAME (widget); -} - -static gboolean -compare_focus (gpointer data) -{ - AtkObject *atk_focus; - AtkObject *gtk_focus; - GtkWidget *focus_widget; - GList *list, *l; - - atk_focus = atk_get_focus_object (); - - focus_widget = NULL; - list = gtk_window_list_toplevels (); - for (l = list; l; l = l->next) - { - GtkWindow *w = l->data; - if (gtk_window_is_active (w)) - { - focus_widget = gtk_window_get_focus (w); - break; - } - } - g_list_free (list); - - if (GTK_IS_WIDGET (focus_widget)) - gtk_focus = gtk_widget_get_accessible (focus_widget); - else - gtk_focus = NULL; - - if (gtk_focus != atk_focus) - g_print ("gtk focus: %s != atk focus: %s\n", - get_name (gtk_focus), get_name (atk_focus)); - - return G_SOURCE_CONTINUE; -} - -static void -notify_cb (GObject *obj, GParamSpec *pspec, gpointer data) -{ - gboolean value; - - if (g_strcmp0 (pspec->name, "has-focus") != 0) - return; - - g_object_get (obj, "has-focus", &value, NULL); - g_print ("widget %s %p has-focus -> %d\n", get_name (obj), obj, value); -} - -static void -state_change_cb (AtkObject *obj, const char *name, gboolean state_set) -{ - AtkStateSet *set; - - set = atk_object_ref_state_set (obj); - g_print ("accessible %s %p focused -> %d\n", get_name (obj), obj, - atk_state_set_contains_state (set, ATK_STATE_FOCUSED)); - g_object_unref (set); -} - -int -main (int argc, char *argv[]) -{ - GtkBuilder *builder; - GtkWidget *window; - GSList *o, *l; - GtkWidget *widget; - AtkObject *accessible; - - gtk_init (&argc, &argv); - - builder = gtk_builder_new (); - gtk_builder_add_from_file (builder, argv[1], NULL); - - window = (GtkWidget *)gtk_builder_get_object (builder, "window1"); - - o = gtk_builder_get_objects (builder); - for (l = o; l;l = l->next) - { - if (!GTK_IS_WIDGET (l->data)) - continue; - - widget = l->data; - g_signal_connect (widget, "notify::has-focus", G_CALLBACK (notify_cb), NULL); - accessible = gtk_widget_get_accessible (widget); - g_signal_connect (accessible, "state-change::focused", G_CALLBACK (state_change_cb), NULL); - - } - g_slist_free (o); - - g_timeout_add (100, compare_focus, NULL); - - gtk_widget_show (window); - - while (TRUE) - g_main_context_iteration (NULL, TRUE); - - return 0; -} - diff --git a/testsuite/a11y/tests.test.in b/testsuite/a11y/tests.test.in deleted file mode 100644 index 2787e6fab2..0000000000 --- a/testsuite/a11y/tests.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/a11y/accessibility-dump --tap -k --verbose --directory @libexecdir@/installed-tests/gtk-4.0/a11y -Type=session -Output=TAP diff --git a/testsuite/a11y/text.c b/testsuite/a11y/text.c deleted file mode 100644 index 23460430f8..0000000000 --- a/testsuite/a11y/text.c +++ /dev/null @@ -1,1099 +0,0 @@ -/* - * Copyright (C) 2011 Red Hat Inc. - * - * Author: - * Matthias Clasen <mclasen@redhat.com> - * - * 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, see <http://www.gnu.org/licenses/>. - */ - -#include <gtk/gtk.h> -#include <string.h> - -static void -set_text (GtkWidget *widget, - const char *text) -{ - if (GTK_IS_LABEL (widget)) - gtk_label_set_text (GTK_LABEL (widget), text); - else if (GTK_IS_EDITABLE (widget)) - gtk_editable_set_text (GTK_EDITABLE (widget), text); - else if (GTK_IS_TEXT_VIEW (widget)) - gtk_text_buffer_set_text (gtk_text_view_get_buffer (GTK_TEXT_VIEW (widget)), text, -1); - else - g_assert_not_reached (); -} - -static void -append_text (GtkWidget *widget, - const char *text) -{ - if (GTK_IS_LABEL (widget)) - { - char *tmp; - - tmp = g_strconcat (gtk_label_get_text (GTK_LABEL (widget)), text, NULL); - gtk_label_set_text (GTK_LABEL (widget), tmp); - g_free (tmp); - } - else if (GTK_IS_EDITABLE (widget)) - { - char *tmp; - - tmp = g_strconcat (gtk_editable_get_text (GTK_EDITABLE (widget)), text, NULL); - gtk_editable_set_text (GTK_EDITABLE (widget), tmp); - g_free (tmp); - } - else if (GTK_IS_TEXT_VIEW (widget)) - { - GtkTextBuffer *buffer; - GtkTextIter end; - - buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (widget)); - gtk_text_buffer_get_end_iter (buffer, &end); - gtk_text_buffer_insert (buffer, &end, text, -1); - } - else - g_assert_not_reached (); -} - -static void -test_basic (GtkWidget *widget) -{ - AtkText *atk_text; - const char *text = "Text goes here"; - char *ret; - int count; - gunichar c; - - atk_text = ATK_TEXT (gtk_widget_get_accessible (widget)); - - set_text (widget, text); - ret = atk_text_get_text (atk_text, 5, 9); - g_assert_cmpstr (ret, ==, "goes"); - g_free (ret); - - ret = atk_text_get_text (atk_text, 0, 14); - g_assert_cmpstr (ret, ==, text); - g_free (ret); - - ret = atk_text_get_text (atk_text, 0, -1); - g_assert_cmpstr (ret, ==, text); - g_free (ret); - - count = atk_text_get_character_count (atk_text); - g_assert_cmpint (count, ==, g_utf8_strlen (text, -1)); - - c = atk_text_get_character_at_offset (atk_text, 0); - g_assert_cmpint (c, ==, 'T'); - - c = atk_text_get_character_at_offset (atk_text, 13); - g_assert_cmpint (c, ==, 'e'); -} - -typedef struct { - int count; - int position; - int length; -} SignalData; - -static void -text_deleted (AtkText *atk_text, int position, int length, SignalData *data) -{ - data->count++; - data->position = position; - data->length = length; -} - -static void -text_inserted (AtkText *atk_text, int position, int length, SignalData *data) -{ - data->count++; - data->position = position; - data->length = length; -} - -static void -test_text_changed (GtkWidget *widget) -{ - AtkText *atk_text; - const char *text = "Täxt goes here"; - const char *text2 = "Täxt again"; - SignalData delete_data; - SignalData insert_data; - gboolean cant_append = FALSE; - - if (GTK_IS_LABEL (widget) || GTK_IS_TEXT (widget)) - cant_append = TRUE; - - atk_text = ATK_TEXT (gtk_widget_get_accessible (widget)); - - delete_data.count = 0; - insert_data.count = 0; - - g_signal_connect (atk_text, "text_changed::delete", - G_CALLBACK (text_deleted), &delete_data); - g_signal_connect (atk_text, "text_changed::insert", - G_CALLBACK (text_inserted), &insert_data); - - set_text (widget, text); - - g_assert_cmpint (delete_data.count, ==, 0); - - g_assert_cmpint (insert_data.count, ==, 1); - g_assert_cmpint (insert_data.position, ==, 0); - g_assert_cmpint (insert_data.length, ==, g_utf8_strlen (text, -1)); - - delete_data.count = 0; - insert_data.count = 0; - - append_text (widget, text2); - - if (cant_append) - { - g_assert_cmpint (delete_data.count, ==, 1); - g_assert_cmpint (delete_data.position, ==, 0); - g_assert_cmpint (delete_data.length, ==, g_utf8_strlen (text, -1)); - - g_assert_cmpint (insert_data.count, ==, 1); - g_assert_cmpint (insert_data.position, ==, 0); - g_assert_cmpint (insert_data.length, ==, g_utf8_strlen (text, -1) + g_utf8_strlen (text2, -1)); - } - else - { - g_assert_cmpint (delete_data.count, ==, 0); - - g_assert_cmpint (insert_data.count, ==, 1); - g_assert_cmpint (insert_data.position, ==, g_utf8_strlen (text, -1)); - g_assert_cmpint (insert_data.length, ==, g_utf8_strlen (text2, -1)); - } - - delete_data.count = 0; - insert_data.count = 0; - - set_text (widget, ""); - - g_assert_cmpint (delete_data.count, ==, 1); - g_assert_cmpint (delete_data.position, ==, 0); - g_assert_cmpint (delete_data.length, ==, g_utf8_strlen (text, -1) + g_utf8_strlen (text2, -1)); - - g_assert_cmpint (insert_data.count, ==, 0); - - g_signal_handlers_disconnect_by_func (atk_text, G_CALLBACK (text_deleted), &delete_data); - g_signal_handlers_disconnect_by_func (atk_text, G_CALLBACK (text_inserted), &insert_data); -} - -typedef struct { - int gravity; - int offset; - AtkTextBoundary boundary; - int start; - int end; - const char *word; -} Word; - -#ifdef DUMP_RESULTS -static const char * -boundary (AtkTextBoundary b) -{ - switch (b) - { - case ATK_TEXT_BOUNDARY_CHAR: return "ATK_TEXT_BOUNDARY_CHAR, "; - case ATK_TEXT_BOUNDARY_WORD_START: return "ATK_TEXT_BOUNDARY_WORD_START, "; - case ATK_TEXT_BOUNDARY_WORD_END: return "ATK_TEXT_BOUNDARY_WORD_END, "; - case ATK_TEXT_BOUNDARY_SENTENCE_START: return "ATK_TEXT_BOUNDARY_SENTENCE_START,"; - case ATK_TEXT_BOUNDARY_SENTENCE_END: return "ATK_TEXT_BOUNDARY_SENTENCE_END, "; - case ATK_TEXT_BOUNDARY_LINE_START: return "ATK_TEXT_BOUNDARY_LINE_START, "; - case ATK_TEXT_BOUNDARY_LINE_END: return "ATK_TEXT_BOUNDARY_LINE_END, "; - default: g_assert_not_reached (); - } -} - -static const char * -gravity (int g) -{ - if (g < 0) return "before"; - else if (g > 0) return "after"; - else return "around"; -} - -const char * -char_rep (gunichar c) -{ - static char out[6]; - - switch (c) - { - case '\n': return "\\n"; - case 196: return "?"; - case 214: return "?"; - case 220: return "?"; - default: - memset (out, 0, 6); - g_unichar_to_utf8 (c, out); - return out; - } -} - -char * -escape (const char *p) -{ - GString *s; - - s = g_string_new (""); - - while (*p) - { - if (*p == '\n') - g_string_append (s, "\\n"); - else - g_string_append_c (s, *p); - p++; - } - - return g_string_free (s, FALSE); -} -#endif - -#ifdef SHOW_TEXT_ATTRIBUTES -static void -show_text_attributes (PangoLayout *l) -{ - const PangoLogAttr *attr; - int n_attrs; - const char *s; - char e; - const char *p; - int i; - const char *text; - GSList *lines, *li; - glong so, eo; - - printf ("\n"); - - text = pango_layout_get_text (l); - attr = pango_layout_get_log_attrs_readonly (l, &n_attrs); - - p = text; - while (*p) - { - s = char_rep (g_utf8_get_char (p)); - printf (" %s", s); - p = g_utf8_next_char (p); - } - printf ("\n"); - p = text; - i = 0; - do - { - if (*p) - s = char_rep (g_utf8_get_char (p)); - else - s = ""; - if (attr[i].is_word_start && attr[i].is_word_end) - e = '|'; - else if (attr[i].is_word_start) - e = '<'; - else if (attr[i].is_word_end) - e = '>'; - else - e = ' '; - printf ("%c%*s", e, strlen (s), ""); - if (*p) - p = g_utf8_next_char (p); - i++; - } - while (*p || i < n_attrs); - printf ("\n"); - - p = text; - i = 0; - do - { - if (*p) - s = char_rep (g_utf8_get_char (p)); - else - s = ""; - if (attr[i].is_sentence_start && attr[i].is_sentence_end) - e = '|'; - else if (attr[i].is_sentence_start) - e = '<'; - else if (attr[i].is_sentence_end) - e = '>'; - else - e = ' '; - printf ("%c%*s", e, strlen (s), ""); - if (*p) - p = g_utf8_next_char (p); - i++; - } - while (*p || i < n_attrs); - printf ("\n"); - - lines = pango_layout_get_lines_readonly (l); - p = text; - i = 0; - do - { - gboolean start, end; - - if (*p) - s = char_rep (g_utf8_get_char (p)); - else - s = ""; - start = end = FALSE; - for (li = lines; li; li = li->next) - { - PangoLayoutLine *line = li->data; - so = g_utf8_pointer_to_offset (text, text + line->start_index); - eo = g_utf8_pointer_to_offset (text, text + line->start_index + line->length); - if (so == i) - start = TRUE; - if (eo == i) - end = TRUE; - } - if (start && end) - e = '|'; - else if (start) - e = '<'; - else if (end) - e = '>'; - else - e = ' '; - printf ("%c%*s", e, strlen (s), ""); - if (*p) - p = g_utf8_next_char (p); - i++; - } - while (*p || i < n_attrs); - printf ("\n"); -} -#endif - -static void -test_words (GtkWidget *widget) -{ - AtkText *atk_text; - const char *text = "abc! def\nghi jkl\nmno"; - Word expected[] = { - { -1, 0, ATK_TEXT_BOUNDARY_CHAR, 0, 0, "" }, - { -1, 1, ATK_TEXT_BOUNDARY_CHAR, 0, 1, "a" }, - { -1, 2, ATK_TEXT_BOUNDARY_CHAR, 1, 2, "b" }, - { -1, 3, ATK_TEXT_BOUNDARY_CHAR, 2, 3, "c" }, - { -1, 4, ATK_TEXT_BOUNDARY_CHAR, 3, 4, "!" }, - { -1, 5, ATK_TEXT_BOUNDARY_CHAR, 4, 5, " " }, - { -1, 6, ATK_TEXT_BOUNDARY_CHAR, 5, 6, "d" }, - { -1, 7, ATK_TEXT_BOUNDARY_CHAR, 6, 7, "e" }, - { -1, 8, ATK_TEXT_BOUNDARY_CHAR, 7, 8, "f" }, - { -1, 9, ATK_TEXT_BOUNDARY_CHAR, 8, 9, "\n" }, - { -1, 10, ATK_TEXT_BOUNDARY_CHAR, 9, 10, "g" }, - { -1, 11, ATK_TEXT_BOUNDARY_CHAR, 10, 11, "h" }, - { -1, 12, ATK_TEXT_BOUNDARY_CHAR, 11, 12, "i" }, - { -1, 13, ATK_TEXT_BOUNDARY_CHAR, 12, 13, " " }, - { -1, 14, ATK_TEXT_BOUNDARY_CHAR, 13, 14, "j" }, - { -1, 15, ATK_TEXT_BOUNDARY_CHAR, 14, 15, "k" }, - { -1, 16, ATK_TEXT_BOUNDARY_CHAR, 15, 16, "l" }, - { -1, 17, ATK_TEXT_BOUNDARY_CHAR, 16, 17, "\n" }, - { -1, 18, ATK_TEXT_BOUNDARY_CHAR, 17, 18, "m" }, - { -1, 19, ATK_TEXT_BOUNDARY_CHAR, 18, 19, "n" }, - { -1, 20, ATK_TEXT_BOUNDARY_CHAR, 19, 20, "o" }, - { -1, 0, ATK_TEXT_BOUNDARY_WORD_START, 0, 0, "" }, - { -1, 1, ATK_TEXT_BOUNDARY_WORD_START, 0, 0, "" }, - { -1, 2, ATK_TEXT_BOUNDARY_WORD_START, 0, 0, "" }, - { -1, 3, ATK_TEXT_BOUNDARY_WORD_START, 0, 0, "" }, - { -1, 4, ATK_TEXT_BOUNDARY_WORD_START, 0, 0, "" }, - { -1, 5, ATK_TEXT_BOUNDARY_WORD_START, 0, 5, "abc! " }, - { -1, 6, ATK_TEXT_BOUNDARY_WORD_START, 0, 5, "abc! " }, - { -1, 7, ATK_TEXT_BOUNDARY_WORD_START, 0, 5, "abc! " }, - { -1, 8, ATK_TEXT_BOUNDARY_WORD_START, 0, 5, "abc! " }, - { -1, 9, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { -1, 10, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { -1, 11, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { -1, 12, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { -1, 13, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { -1, 14, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { -1, 15, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { -1, 16, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { -1, 17, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { -1, 18, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { -1, 19, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { -1, 20, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { -1, 0, ATK_TEXT_BOUNDARY_WORD_END, 0, 0, "" }, - { -1, 1, ATK_TEXT_BOUNDARY_WORD_END, 0, 0, "" }, - { -1, 2, ATK_TEXT_BOUNDARY_WORD_END, 0, 0, "" }, - { -1, 3, ATK_TEXT_BOUNDARY_WORD_END, 0, 3, "abc" }, - { -1, 4, ATK_TEXT_BOUNDARY_WORD_END, 0, 3, "abc" }, - { -1, 5, ATK_TEXT_BOUNDARY_WORD_END, 0, 3, "abc" }, - { -1, 6, ATK_TEXT_BOUNDARY_WORD_END, 0, 3, "abc" }, - { -1, 7, ATK_TEXT_BOUNDARY_WORD_END, 0, 3, "abc" }, - { -1, 8, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { -1, 9, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { -1, 10, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { -1, 11, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { -1, 12, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { -1, 13, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { -1, 14, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { -1, 15, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { -1, 16, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { -1, 17, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { -1, 18, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { -1, 19, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { -1, 20, ATK_TEXT_BOUNDARY_WORD_END, 16, 20, "\nmno" }, - { -1, 0, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 0, "" }, - { -1, 1, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 0, "" }, - { -1, 2, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 0, "" }, - { -1, 3, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 0, "" }, - { -1, 4, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 0, "" }, - { -1, 5, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 5, "abc! " }, - { -1, 6, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 5, "abc! " }, - { -1, 7, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 5, "abc! " }, - { -1, 8, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 5, "abc! " }, - { -1, 9, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { -1, 10, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { -1, 11, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { -1, 12, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { -1, 13, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { -1, 14, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { -1, 15, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { -1, 16, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { -1, 17, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { -1, 18, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { -1, 19, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { -1, 20, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { -1, 0, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 0, "" }, - { -1, 1, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 0, "" }, - { -1, 2, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 0, "" }, - { -1, 3, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 0, "" }, - { -1, 4, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 4, "abc!" }, - { -1, 5, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 4, "abc!" }, - { -1, 6, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 4, "abc!" }, - { -1, 7, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 4, "abc!" }, - { -1, 8, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { -1, 9, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { -1, 10, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { -1, 11, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { -1, 12, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { -1, 13, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { -1, 14, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { -1, 15, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { -1, 16, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { -1, 17, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { -1, 18, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { -1, 19, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { -1, 20, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { -1, 0, ATK_TEXT_BOUNDARY_LINE_START, 0, 0, "" }, - { -1, 1, ATK_TEXT_BOUNDARY_LINE_START, 0, 0, "" }, - { -1, 2, ATK_TEXT_BOUNDARY_LINE_START, 0, 0, "" }, - { -1, 3, ATK_TEXT_BOUNDARY_LINE_START, 0, 0, "" }, - { -1, 4, ATK_TEXT_BOUNDARY_LINE_START, 0, 0, "" }, - { -1, 5, ATK_TEXT_BOUNDARY_LINE_START, 0, 0, "" }, - { -1, 6, ATK_TEXT_BOUNDARY_LINE_START, 0, 0, "" }, - { -1, 7, ATK_TEXT_BOUNDARY_LINE_START, 0, 0, "" }, - { -1, 8, ATK_TEXT_BOUNDARY_LINE_START, 0, 0, "" }, - { -1, 9, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { -1, 10, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { -1, 11, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { -1, 12, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { -1, 13, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { -1, 14, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { -1, 15, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { -1, 16, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { -1, 17, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { -1, 18, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { -1, 19, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { -1, 20, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { -1, 0, ATK_TEXT_BOUNDARY_LINE_END, 0, 0, "" }, - { -1, 1, ATK_TEXT_BOUNDARY_LINE_END, 0, 0, "" }, - { -1, 2, ATK_TEXT_BOUNDARY_LINE_END, 0, 0, "" }, - { -1, 3, ATK_TEXT_BOUNDARY_LINE_END, 0, 0, "" }, - { -1, 4, ATK_TEXT_BOUNDARY_LINE_END, 0, 0, "" }, - { -1, 5, ATK_TEXT_BOUNDARY_LINE_END, 0, 0, "" }, - { -1, 6, ATK_TEXT_BOUNDARY_LINE_END, 0, 0, "" }, - { -1, 7, ATK_TEXT_BOUNDARY_LINE_END, 0, 0, "" }, - { -1, 8, ATK_TEXT_BOUNDARY_LINE_END, 0, 0, "" }, - { -1, 9, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { -1, 10, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { -1, 11, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { -1, 12, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { -1, 13, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { -1, 14, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { -1, 15, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { -1, 16, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { -1, 17, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { -1, 18, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { -1, 19, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { -1, 20, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 0, 0, ATK_TEXT_BOUNDARY_CHAR, 0, 1, "a" }, - { 0, 1, ATK_TEXT_BOUNDARY_CHAR, 1, 2, "b" }, - { 0, 2, ATK_TEXT_BOUNDARY_CHAR, 2, 3, "c" }, - { 0, 3, ATK_TEXT_BOUNDARY_CHAR, 3, 4, "!" }, - { 0, 4, ATK_TEXT_BOUNDARY_CHAR, 4, 5, " " }, - { 0, 5, ATK_TEXT_BOUNDARY_CHAR, 5, 6, "d" }, - { 0, 6, ATK_TEXT_BOUNDARY_CHAR, 6, 7, "e" }, - { 0, 7, ATK_TEXT_BOUNDARY_CHAR, 7, 8, "f" }, - { 0, 8, ATK_TEXT_BOUNDARY_CHAR, 8, 9, "\n" }, - { 0, 9, ATK_TEXT_BOUNDARY_CHAR, 9, 10, "g" }, - { 0, 10, ATK_TEXT_BOUNDARY_CHAR, 10, 11, "h" }, - { 0, 11, ATK_TEXT_BOUNDARY_CHAR, 11, 12, "i" }, - { 0, 12, ATK_TEXT_BOUNDARY_CHAR, 12, 13, " " }, - { 0, 13, ATK_TEXT_BOUNDARY_CHAR, 13, 14, "j" }, - { 0, 14, ATK_TEXT_BOUNDARY_CHAR, 14, 15, "k" }, - { 0, 15, ATK_TEXT_BOUNDARY_CHAR, 15, 16, "l" }, - { 0, 16, ATK_TEXT_BOUNDARY_CHAR, 16, 17, "\n" }, - { 0, 17, ATK_TEXT_BOUNDARY_CHAR, 17, 18, "m" }, - { 0, 18, ATK_TEXT_BOUNDARY_CHAR, 18, 19, "n" }, - { 0, 19, ATK_TEXT_BOUNDARY_CHAR, 19, 20, "o" }, - { 0, 20, ATK_TEXT_BOUNDARY_CHAR, 20, 20, "" }, - { 0, 0, ATK_TEXT_BOUNDARY_WORD_START, 0, 5, "abc! " }, - { 0, 1, ATK_TEXT_BOUNDARY_WORD_START, 0, 5, "abc! " }, - { 0, 2, ATK_TEXT_BOUNDARY_WORD_START, 0, 5, "abc! " }, - { 0, 3, ATK_TEXT_BOUNDARY_WORD_START, 0, 5, "abc! " }, - { 0, 4, ATK_TEXT_BOUNDARY_WORD_START, 0, 5, "abc! " }, - { 0, 5, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { 0, 6, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { 0, 7, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { 0, 8, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { 0, 9, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { 0, 10, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { 0, 11, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { 0, 12, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { 0, 13, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { 0, 14, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { 0, 15, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { 0, 16, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { 0, 17, ATK_TEXT_BOUNDARY_WORD_START, 17, 20, "mno" }, - { 0, 18, ATK_TEXT_BOUNDARY_WORD_START, 17, 20, "mno" }, - { 0, 19, ATK_TEXT_BOUNDARY_WORD_START, 17, 20, "mno" }, - { 0, 20, ATK_TEXT_BOUNDARY_WORD_START, 17, 20, "mno" }, - { 0, 0, ATK_TEXT_BOUNDARY_WORD_END, 0, 3, "abc" }, - { 0, 1, ATK_TEXT_BOUNDARY_WORD_END, 0, 3, "abc" }, - { 0, 2, ATK_TEXT_BOUNDARY_WORD_END, 0, 3, "abc" }, - { 0, 3, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { 0, 4, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { 0, 5, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { 0, 6, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { 0, 7, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { 0, 8, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { 0, 9, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { 0, 10, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { 0, 11, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { 0, 12, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { 0, 13, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { 0, 14, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { 0, 15, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { 0, 16, ATK_TEXT_BOUNDARY_WORD_END, 16, 20, "\nmno" }, - { 0, 17, ATK_TEXT_BOUNDARY_WORD_END, 16, 20, "\nmno" }, - { 0, 18, ATK_TEXT_BOUNDARY_WORD_END, 16, 20, "\nmno" }, - { 0, 19, ATK_TEXT_BOUNDARY_WORD_END, 16, 20, "\nmno" }, - { 0, 20, ATK_TEXT_BOUNDARY_WORD_END, 20, 20, "" }, - { 0, 0, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 5, "abc! " }, - { 0, 1, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 5, "abc! " }, - { 0, 2, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 5, "abc! " }, - { 0, 3, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 5, "abc! " }, - { 0, 4, ATK_TEXT_BOUNDARY_SENTENCE_START, 0, 5, "abc! " }, - { 0, 5, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { 0, 6, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { 0, 7, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { 0, 8, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { 0, 9, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 0, 10, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 0, 11, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 0, 12, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 0, 13, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 0, 14, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 0, 15, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 0, 16, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 0, 17, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 0, 18, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 0, 19, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 0, 20, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 0, 0, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 4, "abc!" }, - { 0, 1, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 4, "abc!" }, - { 0, 2, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 4, "abc!" }, - { 0, 3, ATK_TEXT_BOUNDARY_SENTENCE_END, 0, 4, "abc!" }, - { 0, 4, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { 0, 5, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { 0, 6, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { 0, 7, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { 0, 8, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 0, 9, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 0, 10, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 0, 11, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 0, 12, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 0, 13, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 0, 14, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 0, 15, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 0, 16, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 0, 17, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 0, 18, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 0, 19, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 0, 20, ATK_TEXT_BOUNDARY_SENTENCE_END, 20, 20, "" }, - { 0, 0, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { 0, 1, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { 0, 2, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { 0, 3, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { 0, 4, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { 0, 5, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { 0, 6, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { 0, 7, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { 0, 8, ATK_TEXT_BOUNDARY_LINE_START, 0, 9, "abc! def\n" }, - { 0, 9, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 0, 10, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 0, 11, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 0, 12, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 0, 13, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 0, 14, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 0, 15, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 0, 16, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 0, 17, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 0, 18, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 0, 19, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 0, 20, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 0, 0, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { 0, 1, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { 0, 2, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { 0, 3, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { 0, 4, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { 0, 5, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { 0, 6, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { 0, 7, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { 0, 8, ATK_TEXT_BOUNDARY_LINE_END, 0, 8, "abc! def" }, - { 0, 9, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 0, 10, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 0, 11, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 0, 12, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 0, 13, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 0, 14, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 0, 15, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 0, 16, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 0, 17, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 0, 18, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 0, 19, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 0, 20, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 1, 0, ATK_TEXT_BOUNDARY_CHAR, 1, 2, "b" }, - { 1, 1, ATK_TEXT_BOUNDARY_CHAR, 2, 3, "c" }, - { 1, 2, ATK_TEXT_BOUNDARY_CHAR, 3, 4, "!" }, - { 1, 3, ATK_TEXT_BOUNDARY_CHAR, 4, 5, " " }, - { 1, 4, ATK_TEXT_BOUNDARY_CHAR, 5, 6, "d" }, - { 1, 5, ATK_TEXT_BOUNDARY_CHAR, 6, 7, "e" }, - { 1, 6, ATK_TEXT_BOUNDARY_CHAR, 7, 8, "f" }, - { 1, 7, ATK_TEXT_BOUNDARY_CHAR, 8, 9, "\n" }, - { 1, 8, ATK_TEXT_BOUNDARY_CHAR, 9, 10, "g" }, - { 1, 9, ATK_TEXT_BOUNDARY_CHAR, 10, 11, "h" }, - { 1, 10, ATK_TEXT_BOUNDARY_CHAR, 11, 12, "i" }, - { 1, 11, ATK_TEXT_BOUNDARY_CHAR, 12, 13, " " }, - { 1, 12, ATK_TEXT_BOUNDARY_CHAR, 13, 14, "j" }, - { 1, 13, ATK_TEXT_BOUNDARY_CHAR, 14, 15, "k" }, - { 1, 14, ATK_TEXT_BOUNDARY_CHAR, 15, 16, "l" }, - { 1, 15, ATK_TEXT_BOUNDARY_CHAR, 16, 17, "\n" }, - { 1, 16, ATK_TEXT_BOUNDARY_CHAR, 17, 18, "m" }, - { 1, 17, ATK_TEXT_BOUNDARY_CHAR, 18, 19, "n" }, - { 1, 18, ATK_TEXT_BOUNDARY_CHAR, 19, 20, "o" }, - { 1, 19, ATK_TEXT_BOUNDARY_CHAR, 20, 20, "" }, - { 1, 20, ATK_TEXT_BOUNDARY_CHAR, 20, 20, "" }, - { 1, 0, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { 1, 1, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { 1, 2, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { 1, 3, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { 1, 4, ATK_TEXT_BOUNDARY_WORD_START, 5, 9, "def\n" }, - { 1, 5, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { 1, 6, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { 1, 7, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { 1, 8, ATK_TEXT_BOUNDARY_WORD_START, 9, 13, "ghi " }, - { 1, 9, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { 1, 10, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { 1, 11, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { 1, 12, ATK_TEXT_BOUNDARY_WORD_START, 13, 17, "jkl\n" }, - { 1, 13, ATK_TEXT_BOUNDARY_WORD_START, 17, 20, "mno" }, - { 1, 14, ATK_TEXT_BOUNDARY_WORD_START, 17, 20, "mno" }, - { 1, 15, ATK_TEXT_BOUNDARY_WORD_START, 17, 20, "mno" }, - { 1, 16, ATK_TEXT_BOUNDARY_WORD_START, 17, 20, "mno" }, - { 1, 17, ATK_TEXT_BOUNDARY_WORD_START, 20, 20, "" }, - { 1, 18, ATK_TEXT_BOUNDARY_WORD_START, 20, 20, "" }, - { 1, 19, ATK_TEXT_BOUNDARY_WORD_START, 20, 20, "" }, - { 1, 20, ATK_TEXT_BOUNDARY_WORD_START, 20, 20, "" }, - { 1, 0, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { 1, 1, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { 1, 2, ATK_TEXT_BOUNDARY_WORD_END, 3, 8, "! def" }, - { 1, 3, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { 1, 4, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { 1, 5, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { 1, 6, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { 1, 7, ATK_TEXT_BOUNDARY_WORD_END, 8, 12, "\nghi" }, - { 1, 8, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { 1, 9, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { 1, 10, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { 1, 11, ATK_TEXT_BOUNDARY_WORD_END, 12, 16, " jkl" }, - { 1, 12, ATK_TEXT_BOUNDARY_WORD_END, 16, 20, "\nmno" }, - { 1, 13, ATK_TEXT_BOUNDARY_WORD_END, 16, 20, "\nmno" }, - { 1, 14, ATK_TEXT_BOUNDARY_WORD_END, 16, 20, "\nmno" }, - { 1, 15, ATK_TEXT_BOUNDARY_WORD_END, 16, 20, "\nmno" }, - { 1, 16, ATK_TEXT_BOUNDARY_WORD_END, 20, 20, "" }, - { 1, 17, ATK_TEXT_BOUNDARY_WORD_END, 20, 20, "" }, - { 1, 18, ATK_TEXT_BOUNDARY_WORD_END, 20, 20, "" }, - { 1, 19, ATK_TEXT_BOUNDARY_WORD_END, 20, 20, "" }, - { 1, 20, ATK_TEXT_BOUNDARY_WORD_END, 20, 20, "" }, - { 1, 0, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { 1, 1, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { 1, 2, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { 1, 3, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { 1, 4, ATK_TEXT_BOUNDARY_SENTENCE_START, 5, 9, "def\n" }, - { 1, 5, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 1, 6, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 1, 7, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 1, 8, ATK_TEXT_BOUNDARY_SENTENCE_START, 9, 17, "ghi jkl\n" }, - { 1, 9, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 1, 10, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 1, 11, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 1, 12, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 1, 13, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 1, 14, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 1, 15, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 1, 16, ATK_TEXT_BOUNDARY_SENTENCE_START, 17, 20, "mno" }, - { 1, 17, ATK_TEXT_BOUNDARY_SENTENCE_START, 20, 20, "" }, - { 1, 18, ATK_TEXT_BOUNDARY_SENTENCE_START, 20, 20, "" }, - { 1, 19, ATK_TEXT_BOUNDARY_SENTENCE_START, 20, 20, "" }, - { 1, 20, ATK_TEXT_BOUNDARY_SENTENCE_START, 20, 20, "" }, - { 1, 0, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { 1, 1, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { 1, 2, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { 1, 3, ATK_TEXT_BOUNDARY_SENTENCE_END, 4, 8, " def" }, - { 1, 4, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 1, 5, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 1, 6, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 1, 7, ATK_TEXT_BOUNDARY_SENTENCE_END, 8, 16, "\nghi jkl" }, - { 1, 8, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 1, 9, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 1, 10, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 1, 11, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 1, 12, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 1, 13, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 1, 14, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 1, 15, ATK_TEXT_BOUNDARY_SENTENCE_END, 16, 20, "\nmno" }, - { 1, 16, ATK_TEXT_BOUNDARY_SENTENCE_END, 20, 20, "" }, - { 1, 17, ATK_TEXT_BOUNDARY_SENTENCE_END, 20, 20, "" }, - { 1, 18, ATK_TEXT_BOUNDARY_SENTENCE_END, 20, 20, "" }, - { 1, 19, ATK_TEXT_BOUNDARY_SENTENCE_END, 20, 20, "" }, - { 1, 20, ATK_TEXT_BOUNDARY_SENTENCE_END, 20, 20, "" }, - { 1, 0, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 1, 1, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 1, 2, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 1, 3, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 1, 4, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 1, 5, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 1, 6, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 1, 7, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 1, 8, ATK_TEXT_BOUNDARY_LINE_START, 9, 17, "ghi jkl\n" }, - { 1, 9, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 1, 10, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 1, 11, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 1, 12, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 1, 13, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 1, 14, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 1, 15, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 1, 16, ATK_TEXT_BOUNDARY_LINE_START, 17, 20, "mno" }, - { 1, 17, ATK_TEXT_BOUNDARY_LINE_START, 20, 20, "" }, - { 1, 18, ATK_TEXT_BOUNDARY_LINE_START, 20, 20, "" }, - { 1, 19, ATK_TEXT_BOUNDARY_LINE_START, 20, 20, "" }, - { 1, 20, ATK_TEXT_BOUNDARY_LINE_START, 20, 20, "" }, - { 1, 0, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 1, 1, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 1, 2, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 1, 3, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 1, 4, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 1, 5, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 1, 6, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 1, 7, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 1, 8, ATK_TEXT_BOUNDARY_LINE_END, 8, 16, "\nghi jkl" }, - { 1, 9, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 1, 10, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 1, 11, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 1, 12, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 1, 13, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 1, 14, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 1, 15, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 1, 16, ATK_TEXT_BOUNDARY_LINE_END, 16, 20, "\nmno" }, - { 1, 17, ATK_TEXT_BOUNDARY_LINE_END, 20, 20, "" }, - { 1, 18, ATK_TEXT_BOUNDARY_LINE_END, 20, 20, "" }, - { 1, 19, ATK_TEXT_BOUNDARY_LINE_END, 20, 20, "" }, - { 1, 20, ATK_TEXT_BOUNDARY_LINE_END, 20, 20, "" }, - { 0, -1, } - }; - int start, end; - char *word; - int i; - - atk_text = ATK_TEXT (gtk_widget_get_accessible (widget)); - - set_text (widget, text); -#ifdef SHOW_TEXT_ATTRIBUTES - if (GTK_IS_LABEL (widget)) - show_text_attributes (gtk_label_get_layout (GTK_LABEL (widget))); - else if (GTK_IS_ENTRY (widget)) - show_text_attributes (gtk_entry_get_layout (GTK_ENTRY (widget))); -#endif - -#ifdef DUMP_RESULTS - for (i = -1; i <= 1; i++) - { - int j, k; - for (j = ATK_TEXT_BOUNDARY_CHAR; j <= ATK_TEXT_BOUNDARY_LINE_END; j++) - for (k = 0; k <= strlen (text); k++) - { - switch (i) - { - case -1: - word = atk_text_get_text_before_offset (atk_text, k, j, &start, &end); - break; - case 0: - word = atk_text_get_text_at_offset (atk_text, k, j, &start, &end); - break; - case 1: - word = atk_text_get_text_after_offset (atk_text, k, j, &start, &end); - break; - default: - g_assert_not_reached (); - break; - } - printf (" { %2d, %2d, %s %2d, %2d, \"%s\" },\n", i, k, boundary(j), start, end, escape (word)); - g_free (word); - } - } -#endif - - for (i = 0; expected[i].offset != -1; i++) - { - if (GTK_IS_TEXT (widget)) - { - /* GtkText sets single-paragraph mode on its pango layout */ - if (expected[i].boundary == ATK_TEXT_BOUNDARY_LINE_START || - expected[i].boundary == ATK_TEXT_BOUNDARY_LINE_END) - continue; - } - - G_GNUC_BEGIN_IGNORE_DEPRECATIONS; - switch (expected[i].gravity) - { - case -1: - word = atk_text_get_text_before_offset (atk_text, - expected[i].offset, - expected[i].boundary, - &start, &end); - break; - case 0: - word = atk_text_get_text_at_offset (atk_text, - expected[i].offset, - expected[i].boundary, - &start, &end); - break; - case 1: - word = atk_text_get_text_after_offset (atk_text, - expected[i].offset, - expected[i].boundary, - &start, &end); - break; - default: - g_assert_not_reached (); - break; - } - G_GNUC_END_IGNORE_DEPRECATIONS; - - g_assert_cmpstr (word, ==, expected[i].word); - g_assert_cmpint (start, ==, expected[i].start); - g_assert_cmpint (end, ==, expected[i].end); - g_free (word); - } -} - -static void -select_region (GtkWidget *widget, - int start, - int end) -{ - if (GTK_IS_EDITABLE (widget)) - gtk_editable_select_region (GTK_EDITABLE (widget), start, end); - else if (GTK_IS_LABEL (widget)) - gtk_label_select_region (GTK_LABEL (widget), start, end); - else if (GTK_IS_TEXT_VIEW (widget)) - { - GtkTextBuffer *buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (widget)); - GtkTextIter start_iter, end_iter; - - gtk_text_buffer_get_iter_at_offset (buffer, &start_iter, end); - gtk_text_buffer_get_iter_at_offset (buffer, &end_iter, start); - - gtk_text_buffer_select_range (buffer, &start_iter, &end_iter); - } - else - g_assert_not_reached (); -} - -typedef struct { - int count; - int position; - int bound; -} SelectionData; - -static void -caret_moved_cb (AtkText *text, int position, SelectionData *data) -{ - data->count++; - data->position = position; -} - -static void -selection_changed_cb (AtkText *text, SelectionData *data) -{ - data->count++; - - atk_text_get_selection (text, 0, &data->bound, &data->position); -} - -static void -test_selection (GtkWidget *widget) -{ - AtkText *atk_text; - const char *text = "Bla bla bla"; - int n; - char *ret; - int start, end; - SelectionData data1; - SelectionData data2; - - if (GTK_IS_LABEL (widget)) - gtk_label_set_selectable (GTK_LABEL (widget), TRUE); - - atk_text = ATK_TEXT (gtk_widget_get_accessible (widget)); - - data1.count = 0; - data2.count = 0; - g_signal_connect (atk_text, "text_caret_moved", - G_CALLBACK (caret_moved_cb), &data1); - g_signal_connect (atk_text, "text_selection_changed", - G_CALLBACK (selection_changed_cb), &data2); - - set_text (widget, text); - - n = atk_text_get_n_selections (atk_text); - g_assert_cmpint (n, ==, 0); - - if (data1.count == 1) - /* insertion before cursor */ - g_assert_cmpint (data1.position, ==, 11); - else - /* insertion after cursor */ - g_assert_cmpint (data1.count, ==, 0); - g_assert_cmpint (data2.count, ==, 0); - - select_region (widget, 4, 7); - - g_assert_cmpint (data1.count, >=, 1); - g_assert_cmpint (data1.position, ==, 7); - g_assert_cmpint (data2.count, >=, 1); - g_assert_cmpint (data2.bound, ==, 4); - g_assert_cmpint (data2.position, ==, 7); - - n = atk_text_get_n_selections (atk_text); - g_assert_cmpint (n, ==, 1); - - ret = atk_text_get_selection (atk_text, 0, &start, &end); - g_assert_cmpstr (ret, ==, "bla"); - g_assert_cmpint (start, ==, 4); - g_assert_cmpint (end, ==, 7); - g_free (ret); - - atk_text_remove_selection (atk_text, 0); - n = atk_text_get_n_selections (atk_text); - g_assert_cmpint (n, ==, 0); - - g_assert_cmpint (data1.count, >=, 1); - g_assert_cmpint (data2.count, >=, 2); - g_assert_cmpint (data2.position, ==, 7); - g_assert_cmpint (data2.bound, ==, 7); -} - -static void -setup_test (GtkWidget *widget) -{ - set_text (widget, ""); -} - -static void -add_text_test (const char *prefix, - GTestFixtureFunc test_func, - GtkWidget *widget) -{ - char *path; - - path = g_strdup_printf ("%s/%s", prefix, G_OBJECT_TYPE_NAME (widget)); - g_test_add_vtable (path, - 0, - g_object_ref (widget), - (GTestFixtureFunc) setup_test, - (GTestFixtureFunc) test_func, - (GTestFixtureFunc) g_object_unref); - g_free (path); -} - -static void -add_text_tests (GtkWidget *widget) -{ - g_object_ref_sink (widget); - add_text_test ("/text/basic", (GTestFixtureFunc) test_basic, widget); - add_text_test ("/text/words", (GTestFixtureFunc) test_words, widget); - add_text_test ("/text/changed", (GTestFixtureFunc) test_text_changed, widget); - add_text_test ("/text/selection", (GTestFixtureFunc) test_selection, widget); - g_object_unref (widget); -} - -static void -test_bold_label (void) -{ - GtkWidget *label; - AtkObject *atk_obj; - char *text; - - /*http://bugzilla.gnome.org/show_bug.cgi?id=126797 */ - - label = gtk_label_new ("<b>Bold?</b>"); - g_object_ref_sink (label); - - atk_obj = gtk_widget_get_accessible (label); - - text = atk_text_get_text (ATK_TEXT (atk_obj), 0, -1); - g_assert_cmpstr (text, ==, "<b>Bold?</b>"); - g_free (text); - - gtk_label_set_use_markup (GTK_LABEL (label), TRUE); - - text = atk_text_get_text (ATK_TEXT (atk_obj), 0, -1); - g_assert_cmpstr (text, ==, "Bold?"); - g_free (text); - - g_object_unref (label); -} - -int -main (int argc, char *argv[]) -{ - gtk_test_init (&argc, &argv, NULL); - - g_test_add_func ("/text/bold/GtkLabel", test_bold_label); - - add_text_tests (gtk_label_new ("")); - add_text_tests (gtk_text_new ()); - add_text_tests (gtk_text_view_new ()); - - return g_test_run (); -} diff --git a/testsuite/a11y/text.test.in b/testsuite/a11y/text.test.in deleted file mode 100644 index e2421dca23..0000000000 --- a/testsuite/a11y/text.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/a11y/text --tap -k -Type=session -Output=TAP diff --git a/testsuite/a11y/text.txt b/testsuite/a11y/text.txt deleted file mode 100644 index bf0977be30..0000000000 --- a/testsuite/a11y/text.txt +++ /dev/null @@ -1,55 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - text1 - "text" - parent: window1 - index: 0 - state: editable enabled focused multi-line sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Twas brillig, and the slithy toves -Did gyre and gimple in the wabe - character count: 66 - caret offset: 66 - default attributes: bg-color: <omitted> - bg-full-height: false - direction: <omitted> - editable: true - 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: none diff --git a/testsuite/a11y/text.ui b/testsuite/a11y/text.ui deleted file mode 100644 index d8fde1ed6a..0000000000 --- a/testsuite/a11y/text.ui +++ /dev/null @@ -1,16 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkTextBuffer" id="buffer1"> - <property name="text">Twas brillig, and the slithy toves -Did gyre and gimple in the wabe</property> - </object> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkTextView" id="text1"> - <property name="visible">True</property> - <property name="buffer">buffer1</property> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/tooltips.txt b/testsuite/a11y/tooltips.txt deleted file mode 100644 index c2e98c2e25..0000000000 --- a/testsuite/a11y/tooltips.txt +++ /dev/null @@ -1,86 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - box1 - "filler" - parent: window1 - index: 0 - state: enabled horizontal sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - button-with-tooltip-text - "push button" - parent: box1 - index: 0 - description: Tooltip1 - state: enabled focusable focused sensitive showing visible has-tooltip - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button-with-has-tooltip-true - "push button" - parent: box1 - index: 1 - state: enabled focusable sensitive showing visible has-tooltip - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button-without-tooltip - "push button" - parent: box1 - index: 2 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - button-with-has-tooltip-false - "push button" - parent: box1 - index: 3 - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button diff --git a/testsuite/a11y/tooltips.ui b/testsuite/a11y/tooltips.ui deleted file mode 100644 index 4c5145cbe9..0000000000 --- a/testsuite/a11y/tooltips.ui +++ /dev/null @@ -1,33 +0,0 @@ -<interface> - <object class='GtkWindow' id='window1'> - <property name='visible'>True</property> - <child> - <object class='GtkBox' id='box1'> - <property name='visible'>True</property> - <child> - <object class='GtkButton' id='button-with-tooltip-text'> - <property name='visible'>True</property> - <property name="tooltip_text">Tooltip1</property> - </object> - </child> - <child> - <object class='GtkButton' id='button-with-has-tooltip-true'> - <property name='visible'>True</property> - <property name="has_tooltip">True</property> - </object> - </child> - <child> - <object class='GtkButton' id='button-without-tooltip'> - <property name='visible'>True</property> - </object> - </child> - <child> - <object class='GtkButton' id='button-with-has-tooltip-false'> - <property name='visible'>True</property> - <property name="has_tooltip">False</property> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/tree-performance.c b/testsuite/a11y/tree-performance.c deleted file mode 100644 index d04bbb7adc..0000000000 --- a/testsuite/a11y/tree-performance.c +++ /dev/null @@ -1,369 +0,0 @@ -/* - * Copyright (C) 2011 Red Hat Inc. - * - * Author: - * Matthias Clasen <mclasen@redhat.com> - * - * 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, see <http://www.gnu.org/licenses/>. - */ - -#include <gtk/gtk.h> - -#define N_ROWS 10000 - -const char list_ui[] = - "<interface>" - " <object class='GtkListStore' id='liststore1'>" - " <columns>" - " <column type='gchararray'/>" - " <column type='gchararray'/>" - " <column type='gchararray'/>" - " <column type='gboolean'/>" - " <column type='gint'/>" - " <column type='gint'/>" - " </columns>" - " <data>" - " <row><col id='0'>One</col><col id='1'>Two</col><col id='2'>Three</col><col id='3'>True</col><col id='4'>50</col><col id='5'>50</col></row>" - " </data>" - " </object>" - " <object class='GtkWindow' id='window1'>" - " <child>" - " <object class='GtkTreeView' id='treeview1'>" - " <property name='visible'>True</property>" - " <property name='model'>liststore1</property>" - " <child>" - " <object class='GtkTreeViewColumn' id='column1'>" - " <property name='title' translatable='yes'>First column</property>" - " <child>" - " <object class='GtkCellRendererText' id='renderer1'>" - " </object>" - " <attributes>" - " <attribute name='text'>0</attribute>" - " </attributes>" - " </child>" - " <child>" - " <object class='GtkCellRendererToggle' id='renderer2'>" - " </object>" - " <attributes>" - " <attribute name='active'>3</attribute>" - " </attributes>" - " </child>" - " </object>" - " </child>" - " <child>" - " <object class='GtkTreeViewColumn' id='column2'>" - " <property name='title' translatable='yes'>Second column</property>" - " <child>" - " <object class='GtkCellRendererText' id='renderer3'>" - " </object>" - " <attributes>" - " <attribute name='text'>1</attribute>" - " </attributes>" - " </child>" - " <child>" - " <object class='GtkCellRendererProgress' id='renderer4'>" - " </object>" - " <attributes>" - " <attribute name='value'>4</attribute>" - " </attributes>" - " </child>" - " </object>" - " </child>" - " </object>" - " </child>" - " </object>" - "</interface>"; - -static void -walk_accessible_tree (AtkObject *accessible, - gpointer data) -{ - int *count = data; - int i; - - (*count)++; - - for (i = 0; i < atk_object_get_n_accessible_children (accessible); i++) - { - AtkObject *child = atk_object_ref_accessible_child (accessible, i); - walk_accessible_tree (child, data); - g_object_unref (child); - } -} - -static GtkWidget * -builder_get_toplevel (GtkBuilder *builder) -{ - GSList *list, *walk; - GtkWidget *window = NULL; - - list = gtk_builder_get_objects (builder); - for (walk = list; walk; walk = walk->next) - { - if (GTK_IS_WINDOW (walk->data) && - gtk_widget_get_parent (walk->data) == NULL) - { - window = walk->data; - break; - } - } - - g_slist_free (list); - - return window; -} - -static void -populate_list (GtkBuilder *builder) -{ - GtkTreeView *tv; - GtkListStore *store; - GtkTreeIter iter; - int i; - - tv = (GtkTreeView *)gtk_builder_get_object (builder, "treeview1"); - store = (GtkListStore *)gtk_tree_view_get_model (tv); - - /* append a many rows */ - for (i = 0; i < N_ROWS; i++) - { - gtk_list_store_append (store, &iter); - gtk_list_store_set (store, &iter, 0, "Bla", 1, "Bla bla", 2, "Bla bla bla", 3, i % 2 == 0 ? TRUE : FALSE, 4, i % 100, 5, i, -1); - } -} - -static void -test_performance_list (void) -{ - GtkBuilder *builder; - double elapsed; - GtkWidget *window; - GError *error = NULL; - - builder = gtk_builder_new (); - gtk_builder_add_from_string (builder, list_ui, -1, &error); - g_assert_no_error (error); - window = builder_get_toplevel (builder); - g_assert (window); - - gtk_widget_show (window); - - g_test_timer_start (); - - populate_list (builder); - - elapsed = g_test_timer_elapsed (); - g_test_minimized_result (elapsed, "large list test: %gsec", elapsed); - g_object_unref (builder); -} - -static void -test_a11y_performance_list (void) -{ - GtkBuilder *builder; - double elapsed; - GtkWidget *window; - GError *error = NULL; - int count_before; - int count_after; - - builder = gtk_builder_new (); - gtk_builder_add_from_string (builder, list_ui, -1, &error); - g_assert_no_error (error); - window = builder_get_toplevel (builder); - g_assert (window); - - gtk_widget_show (window); - - g_test_timer_start (); - - /* make sure all accessibles exist */ - count_before = 0; - walk_accessible_tree (gtk_widget_get_accessible (window), &count_before); - - populate_list (builder); - - /* for good measure, do this again */ - count_after = 0; - walk_accessible_tree (gtk_widget_get_accessible (window), &count_after); - - elapsed = g_test_timer_elapsed (); - g_test_minimized_result (elapsed, "large list with a11y: %gsec", elapsed); - g_object_unref (builder); - - g_test_message ("%d accessibles before, %d after\n", count_before, count_after); -} - -const char tree_ui[] = - "<interface>" - " <object class='GtkTreeStore' id='treestore1'>" - " <columns>" - " <column type='gchararray'/>" - " <column type='gchararray'/>" - " <column type='gchararray'/>" - " <column type='gboolean'/>" - " <column type='gint'/>" - " <column type='gint'/>" - " </columns>" - " </object>" - " <object class='GtkWindow' id='window1'>" - " <child>" - " <object class='GtkTreeView' id='treeview1'>" - " <property name='visible'>True</property>" - " <property name='model'>treestore1</property>" - " <child>" - " <object class='GtkTreeViewColumn' id='column1'>" - " <property name='title' translatable='yes'>First column</property>" - " <child>" - " <object class='GtkCellRendererText' id='renderer1'>" - " </object>" - " <attributes>" - " <attribute name='text'>0</attribute>" - " </attributes>" - " </child>" - " <child>" - " <object class='GtkCellRendererToggle' id='renderer2'>" - " </object>" - " <attributes>" - " <attribute name='active'>3</attribute>" - " </attributes>" - " </child>" - " </object>" - " </child>" - " <child>" - " <object class='GtkTreeViewColumn' id='column2'>" - " <property name='title' translatable='yes'>Second column</property>" - " <child>" - " <object class='GtkCellRendererText' id='renderer3'>" - " </object>" - " <attributes>" - " <attribute name='text'>1</attribute>" - " </attributes>" - " </child>" - " <child>" - " <object class='GtkCellRendererProgress' id='renderer4'>" - " </object>" - " <attributes>" - " <attribute name='value'>4</attribute>" - " </attributes>" - " </child>" - " </object>" - " </child>" - " </object>" - " </child>" - " </object>" - "</interface>"; - -static void -populate_tree (GtkBuilder *builder) -{ - GtkTreeView *tv; - GtkTreeStore *store; - GtkTreeIter iter; - int i; - - tv = (GtkTreeView *)gtk_builder_get_object (builder, "treeview1"); - store = (GtkTreeStore *)gtk_tree_view_get_model (tv); - - /* append a thousand rows */ - for (i = 0; i < N_ROWS / 3; i++) - { - gtk_tree_store_append (store, &iter, NULL); - gtk_tree_store_set (store, &iter, 0, "Bla", 1, "Bla bla", 2, "Bla bla bla", 3, i % 2 == 0 ? TRUE : FALSE, 4, i % 100, 5, i, -1); - gtk_tree_store_append (store, &iter, &iter); - gtk_tree_store_set (store, &iter, 0, "Bla", 1, "Bla bla", 2, "Bla bla bla", 3, i % 2 == 0 ? TRUE : FALSE, 4, i % 100, 5, i, -1); - gtk_tree_store_append (store, &iter, &iter); - gtk_tree_store_set (store, &iter, 0, "Bla", 1, "Bla bla", 2, "Bla bla bla", 3, i % 2 == 0 ? TRUE : FALSE, 4, i % 100, 5, i, -1); - } - - gtk_tree_view_expand_all (tv); -} - -static void -test_performance_tree (void) -{ - GtkBuilder *builder; - double elapsed; - GtkWidget *window; - GError *error = NULL; - - builder = gtk_builder_new (); - gtk_builder_add_from_string (builder, tree_ui, -1, &error); - g_assert_no_error (error); - window = builder_get_toplevel (builder); - g_assert (window); - - gtk_widget_show (window); - - g_test_timer_start (); - - populate_tree (builder); - - elapsed = g_test_timer_elapsed (); - g_test_minimized_result (elapsed, "large tree test: %gsec", elapsed); - g_object_unref (builder); -} - -static void -test_a11y_performance_tree (void) -{ - GtkBuilder *builder; - double elapsed; - GtkWidget *window; - GError *error = NULL; - int count_before; - int count_after; - - builder = gtk_builder_new (); - gtk_builder_add_from_string (builder, tree_ui, -1, &error); - g_assert_no_error (error); - window = builder_get_toplevel (builder); - g_assert (window); - - gtk_widget_show (window); - - g_test_timer_start (); - - /* make sure all accessibles exist */ - count_before = 0; - walk_accessible_tree (gtk_widget_get_accessible (window), &count_before); - - populate_tree (builder); - - /* for good measure, do this again */ - count_after = 0; - walk_accessible_tree (gtk_widget_get_accessible (window), &count_after); - - elapsed = g_test_timer_elapsed (); - g_test_minimized_result (elapsed, "large tree with a11y: %gsec", elapsed); - g_object_unref (builder); - - g_test_message ("%d accessibles before, %d after\n", count_before, count_after); -} - -int -main (int argc, char *argv[]) -{ - gtk_test_init (&argc, &argv, NULL); - - if (!g_test_perf ()) - return 0; - - g_test_add_func ("/performance/list", test_performance_list); - g_test_add_func ("/a11y/performance/list", test_a11y_performance_list); - g_test_add_func ("/performance/tree", test_performance_tree); - g_test_add_func ("/a11y/performance/tree", test_a11y_performance_tree); - - return g_test_run (); -} diff --git a/testsuite/a11y/tree-relationships.c b/testsuite/a11y/tree-relationships.c deleted file mode 100644 index 852bf3429f..0000000000 --- a/testsuite/a11y/tree-relationships.c +++ /dev/null @@ -1,382 +0,0 @@ -/* - * Copyright (C) 2011 SUSE Linux Products GmbH, Nurenberg, Germany - * - * Author: - * Mike Gorse <mgorse@suse.com> - * - * 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, see <http://www.gnu.org/licenses/>. - */ - -#include <gtk/gtk.h> - -const char list_ui[] = - "<interface>" - " <object class='GtkListStore' id='liststore1'>" - " <columns>" - " <column type='gchararray'/>" - " <column type='gchararray'/>" - " <column type='gchararray'/>" - " <column type='gboolean'/>" - " <column type='gint'/>" - " <column type='gint'/>" - " </columns>" - " <data>" - " <row><col id='0'>One</col><col id='1'>Two</col><col id='2'>Three</col><col id='3'>True</col><col id='4'>50</col><col id='5'>50</col></row>" - " </data>" - " </object>" - " <object class='GtkWindow' id='window1'>" - " <child>" - " <object class='GtkTreeView' id='treeview1'>" - " <property name='visible'>True</property>" - " <property name='model'>liststore1</property>" - " <child>" - " <object class='GtkTreeViewColumn' id='column1'>" - " <property name='title' translatable='yes'>First column</property>" - " <child>" - " <object class='GtkCellRendererText' id='renderer1'>" - " </object>" - " <attributes>" - " <attribute name='text'>0</attribute>" - " </attributes>" - " </child>" - " <child>" - " <object class='GtkCellRendererToggle' id='renderer2'>" - " </object>" - " <attributes>" - " <attribute name='active'>3</attribute>" - " </attributes>" - " </child>" - " </object>" - " </child>" - " <child>" - " <object class='GtkTreeViewColumn' id='column2'>" - " <property name='title' translatable='yes'>Second column</property>" - " <child>" - " <object class='GtkCellRendererText' id='renderer3'>" - " </object>" - " <attributes>" - " <attribute name='text'>1</attribute>" - " </attributes>" - " </child>" - " <child>" - " <object class='GtkCellRendererProgress' id='renderer4'>" - " </object>" - " <attributes>" - " <attribute name='value'>4</attribute>" - " </attributes>" - " </child>" - " </object>" - " </child>" - " </object>" - " </child>" - " </object>" - "</interface>"; - -static GtkWidget * -builder_get_toplevel (GtkBuilder *builder) -{ - GSList *list, *walk; - GtkWidget *window = NULL; - - list = gtk_builder_get_objects (builder); - for (walk = list; walk; walk = walk->next) - { - if (GTK_IS_WINDOW (walk->data) && - gtk_widget_get_parent (walk->data) == NULL) - { - window = walk->data; - break; - } - } - - g_slist_free (list); - - return window; -} - -const char tree_ui[] = - "<interface>" - " <object class='GtkTreeStore' id='treestore1'>" - " <columns>" - " <column type='gchararray'/>" - " <column type='gchararray'/>" - " <column type='gchararray'/>" - " <column type='gboolean'/>" - " <column type='gint'/>" - " <column type='gint'/>" - " </columns>" - " </object>" - " <object class='GtkWindow' id='window1'>" - " <child>" - " <object class='GtkTreeView' id='treeview1'>" - " <property name='visible'>True</property>" - " <property name='model'>treestore1</property>" - " <child>" - " <object class='GtkTreeViewColumn' id='column1'>" - " <property name='title' translatable='yes'>First column</property>" - " <child>" - " <object class='GtkCellRendererText' id='renderer1'>" - " </object>" - " <attributes>" - " <attribute name='text'>0</attribute>" - " </attributes>" - " </child>" - " <child>" - " <object class='GtkCellRendererToggle' id='renderer2'>" - " </object>" - " <attributes>" - " <attribute name='active'>3</attribute>" - " </attributes>" - " </child>" - " </object>" - " </child>" - " <child>" - " <object class='GtkTreeViewColumn' id='column2'>" - " <property name='title' translatable='yes'>Second column</property>" - " <child>" - " <object class='GtkCellRendererText' id='renderer3'>" - " </object>" - " <attributes>" - " <attribute name='text'>1</attribute>" - " </attributes>" - " </child>" - " <child>" - " <object class='GtkCellRendererProgress' id='renderer4'>" - " </object>" - " <attributes>" - " <attribute name='value'>4</attribute>" - " </attributes>" - " </child>" - " </object>" - " </child>" - " </object>" - " </child>" - " </object>" - "</interface>"; - -static void -populate_tree (GtkBuilder *builder) -{ - GtkTreeView *tv; - GtkTreeStore *store; - GtkTreeIter iter; - - tv = (GtkTreeView *)gtk_builder_get_object (builder, "treeview1"); - store = (GtkTreeStore *)gtk_tree_view_get_model (tv); - - /* append some rows */ - gtk_tree_store_append (store, &iter, NULL); - gtk_tree_store_set (store, &iter, 0, "a(1)", 1, "a(2)", 2, "a(3)", 3, TRUE, 4, 0, 5, 0, -1); - gtk_tree_store_append (store, &iter, &iter); - gtk_tree_store_set (store, &iter, 0, "aa(1)", 1, "aa(2)", 2, "aa(3)", 3, TRUE, 4, 0, 5, 0, -1); - gtk_tree_store_append (store, &iter, &iter); - gtk_tree_store_set (store, &iter, 0, "aaa(1)", 1, "aaa(2)", 2, "aaa(3)", 3, TRUE, 4, 0, 5, 0, -1); - - gtk_tree_store_append (store, &iter, NULL); - gtk_tree_store_set (store, &iter, 0, "b(1)", 1, "b(2)", 2, "b(3)", 3, TRUE, 4, 0, 5, 0, -1); - gtk_tree_store_append (store, &iter, &iter); - gtk_tree_store_set (store, &iter, 0, "bb(1)", 1, "bb(2)", 2, "bb(3)", 3, TRUE, 4, 0, 5, 0, -1); - gtk_tree_store_append (store, &iter, &iter); - gtk_tree_store_set (store, &iter, 0, "bbb(1)", 1, "bbb(2)", 2, "bbb(3)", 3, TRUE, 4, 0, 5, 0, -1); -} - -typedef struct { - int count; - AtkObject *descendant; -} SignalData; - -static void -active_descendant_changed (AtkObject *accessible, - AtkObject *descendant, - SignalData *data) -{ - data->count++; - if (data->descendant) - g_object_unref (data->descendant); - data->descendant = g_object_ref (descendant); -} - -static gboolean -quit_loop (gpointer data) -{ - GMainLoop *loop = data; - g_main_loop_quit (loop); - return FALSE; -} - -static void -process_pending_idles (void) -{ - GMainLoop *loop = g_main_loop_new (NULL, FALSE); - g_idle_add (quit_loop, loop); - g_main_loop_run (loop); -} - -static void -test_a11y_tree_focus (void) -{ - GtkBuilder *builder; - GtkWidget *window; - GError *error = NULL; - GtkTreeView *tv; - GtkTreePath *path = NULL; - GtkTreeViewColumn *focus_column = NULL; - SignalData data; - AtkObject *accessible; - AtkObject *child; - char *text; - - builder = gtk_builder_new (); - gtk_builder_add_from_string (builder, tree_ui, -1, &error); - g_assert_no_error (error); - window = builder_get_toplevel (builder); - g_assert (window); - - populate_tree (builder); - - tv = (GtkTreeView *)gtk_builder_get_object (builder, "treeview1"); - gtk_tree_view_expand_all (tv); - - gtk_widget_show (window); - - gtk_tree_view_get_cursor (tv, &path, &focus_column); - gtk_tree_path_down (path); - data.count = 0; - data.descendant = NULL; - accessible = gtk_widget_get_accessible (GTK_WIDGET (tv)); - g_signal_connect (accessible, "active_descendant_changed", - G_CALLBACK (active_descendant_changed), &data); - gtk_tree_view_set_cursor (tv, path, focus_column, FALSE); - /* hack: active_descendant_change gets fired in an idle handler */ - process_pending_idles (); - /* Getting only one signal might be ideal, although we get three or so */ - g_assert_cmpint (data.count, >=, 1); - child = atk_object_ref_accessible_child (data.descendant, 0); - text = atk_text_get_text (ATK_TEXT (child), 0, -1); - g_assert_cmpstr (text, ==, "aa(1)"); - g_free (text); - - g_object_unref (child); - - g_object_unref (data.descendant); - g_object_unref (builder); - -} - -static AtkObject * -find_root_accessible (GtkTreeView *tv, const char *name) -{ - AtkObject *tvaccessible = gtk_widget_get_accessible (GTK_WIDGET (tv)); - int i = 0; - - for (i = 0;;i++) - { - AtkObject *child = atk_object_ref_accessible_child (tvaccessible, i); - AtkObject *item; - char *text; - if (!child) - return NULL; - item = atk_object_ref_accessible_child (child, 0); - if (!item) - continue; - text = atk_text_get_text (ATK_TEXT (item), 0, -1); - g_object_unref (item); - if (!g_strcmp0 (text, name)) - { - g_free (text); - return child; - } - g_free (text); - g_object_unref (child); - } -} - -static void -test_node_child_of (AtkObject *child, AtkObject *parent) -{ - AtkRelationSet *set = atk_object_ref_relation_set (child); - AtkRelation *relation = atk_relation_set_get_relation_by_type (set, ATK_RELATION_NODE_CHILD_OF); - - g_assert (relation != NULL); - g_assert_cmpint (relation->target->len, ==, 1); - g_assert (g_ptr_array_index (relation->target, 0) == parent); - g_object_unref (set); -} - -static void -test_node_parent_of (AtkObject *parent, AtkObject *child) -{ - AtkRelationSet *set = atk_object_ref_relation_set (parent); - AtkRelation *relation = atk_relation_set_get_relation_by_type (set, ATK_RELATION_NODE_PARENT_OF); - - g_assert (relation != NULL); - g_assert_cmpint (relation->target->len, ==, 1); - g_assert (g_ptr_array_index (relation->target, 0) == child); - g_object_unref (set); -} - -static void -test_relations (AtkObject *parent, AtkObject *child) -{ - test_node_parent_of (parent, child); - test_node_child_of (child, parent); -} - -static void -test_a11y_tree_relations (void) -{ - GtkBuilder *builder; - GtkWidget *window; - GError *error = NULL; - GtkTreeView *tv; - AtkObject *parent, *child; - - builder = gtk_builder_new (); - gtk_builder_add_from_string (builder, tree_ui, -1, &error); - g_assert_no_error (error); - window = builder_get_toplevel (builder); - g_assert (window); - - populate_tree (builder); - - tv = (GtkTreeView *)gtk_builder_get_object (builder, "treeview1"); - gtk_tree_view_expand_all (tv); - - gtk_widget_show (window); - - parent = find_root_accessible (tv, "a(1)"); -child = find_root_accessible (tv, "aa(1)"); - test_relations (parent, child); - g_object_unref (parent); - parent = child; -child = find_root_accessible (tv, "aaa(1)"); - test_relations (parent, child); - g_object_unref (parent); - g_object_unref (child); - - g_object_unref (builder); - -} - -int -main (int argc, char *argv[]) -{ - gtk_test_init (&argc, &argv, NULL); - - g_test_add_func ("/a11y/tree/focus", test_a11y_tree_focus); - g_test_add_func ("/a11y/tree/relations", test_a11y_tree_relations); - - return g_test_run (); -} - diff --git a/testsuite/a11y/tree.test.in b/testsuite/a11y/tree.test.in deleted file mode 100644 index d093515472..0000000000 --- a/testsuite/a11y/tree.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/a11y/tree-relationships --tap -k -Type=session -Output=TAP diff --git a/testsuite/a11y/tree.txt b/testsuite/a11y/tree.txt deleted file mode 100644 index eac4f56544..0000000000 --- a/testsuite/a11y/tree.txt +++ /dev/null @@ -1,413 +0,0 @@ -window1 - "frame" - index: 0 - state: enabled resizable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - unnamed-GtkContainerAccessible-0 - "panel" - parent: window1 - state: enabled sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - tv - "table" - parent: window1 - index: 0 - state: enabled focused sensitive showing visible manages-descendants - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkSelection> - selected children: tv - <AtkTable> - rows: 3 - columns: 1 - selected rows: 0 - column 0 description: Test - column 0 header: unnamed-GtkButtonAccessible-1 - table indexes: - ✓✓tv - ✓✓tv - ✓✓tv - unnamed-GtkButtonAccessible-1 - "table column header" - parent: tv - index: 0 - name: Test - state: enabled focusable sensitive showing visible - toolkit: gtk - <AtkComponent> - layer: widget - alpha: 1 - <AtkImage> - image size: -1 x -1 - image description: (null) - <AtkAction> - action 0 name: click - action 0 description: Clicks the button - tv - "table cell" - parent: tv - index: 1 - state: active enabled focusable focused selectable selected sensitive showing transient visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: expand or contract - action 0 description: Expands or contracts the row in the tree view containing this cell - action 1 name: edit - action 1 description: Creates a widget in which the contents of the cell can be edited - action 2 name: activate - action 2 description: Activates the cell - <AtkTableCell> - table: tv - column-header[0]: unnamed-GtkButtonAccessible-1 - column-span: 1 - row-span: 1 - tv - "table cell" - parent: tv - index: 0 - name: One - state: active enabled focusable focused selectable selected sensitive showing single-line transient visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: One - character count: 3 - caret offset: -1 - default attributes: bg-color: <omitted> - bg-full-height: 0 - 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 - <AtkAction> - action 0 name: expand or contract - action 0 description: Expands or contracts the row in the tree view containing this cell - action 1 name: edit - action 1 description: Creates a widget in which the contents of the cell can be edited - action 2 name: activate - action 2 description: Activates the cell - <AtkTableCell> - table: tv - column-header[0]: unnamed-GtkButtonAccessible-1 - column-span: 1 - row-span: 1 - tv - "table cell" - parent: tv - index: 1 - name: 234 - state: active enabled focusable focused selectable selected sensitive showing single-line transient visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: 234 - character count: 3 - caret offset: -1 - default attributes: bg-color: <omitted> - bg-full-height: 0 - 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 - <AtkAction> - action 0 name: expand or contract - action 0 description: Expands or contracts the row in the tree view containing this cell - action 1 name: edit - action 1 description: Creates a widget in which the contents of the cell can be edited - action 2 name: activate - action 2 description: Activates the cell - <AtkTableCell> - table: tv - column-header[0]: unnamed-GtkButtonAccessible-1 - column-span: 1 - row-span: 1 - tv - "table cell" - parent: tv - index: 2 - state: enabled focusable selectable sensitive showing transient visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: expand or contract - action 0 description: Expands or contracts the row in the tree view containing this cell - action 1 name: edit - action 1 description: Creates a widget in which the contents of the cell can be edited - action 2 name: activate - action 2 description: Activates the cell - <AtkTableCell> - table: tv - column-header[0]: unnamed-GtkButtonAccessible-1 - column-span: 1 - row-span: 1 - position: 1 0 - tv - "table cell" - parent: tv - index: 0 - name: Two - state: enabled focusable selectable sensitive showing single-line transient visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: Two - character count: 3 - caret offset: -1 - default attributes: bg-color: <omitted> - bg-full-height: 0 - 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 - <AtkAction> - action 0 name: expand or contract - action 0 description: Expands or contracts the row in the tree view containing this cell - action 1 name: edit - action 1 description: Creates a widget in which the contents of the cell can be edited - action 2 name: activate - action 2 description: Activates the cell - <AtkTableCell> - table: tv - column-header[0]: unnamed-GtkButtonAccessible-1 - column-span: 1 - row-span: 1 - position: 1 0 - tv - "table cell" - parent: tv - index: 1 - name: 567 - state: enabled focusable selectable sensitive showing single-line transient visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: 567 - character count: 3 - caret offset: -1 - default attributes: bg-color: <omitted> - bg-full-height: 0 - 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 - <AtkAction> - action 0 name: expand or contract - action 0 description: Expands or contracts the row in the tree view containing this cell - action 1 name: edit - action 1 description: Creates a widget in which the contents of the cell can be edited - action 2 name: activate - action 2 description: Activates the cell - <AtkTableCell> - table: tv - column-header[0]: unnamed-GtkButtonAccessible-1 - column-span: 1 - row-span: 1 - position: 1 0 - tv - "table cell" - parent: tv - index: 3 - state: enabled focusable selectable sensitive showing transient visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkAction> - action 0 name: expand or contract - action 0 description: Expands or contracts the row in the tree view containing this cell - action 1 name: edit - action 1 description: Creates a widget in which the contents of the cell can be edited - action 2 name: activate - action 2 description: Activates the cell - <AtkTableCell> - table: tv - column-header[0]: unnamed-GtkButtonAccessible-1 - column-span: 1 - row-span: 1 - position: 2 0 - tv - "table cell" - parent: tv - index: 0 - name: 40.000 - state: enabled focusable selectable sensitive showing single-line transient visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: 40.000 - character count: 6 - caret offset: -1 - default attributes: bg-color: <omitted> - bg-full-height: 0 - 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 - <AtkAction> - action 0 name: expand or contract - action 0 description: Expands or contracts the row in the tree view containing this cell - action 1 name: edit - action 1 description: Creates a widget in which the contents of the cell can be edited - action 2 name: activate - action 2 description: Activates the cell - <AtkTableCell> - table: tv - column-header[0]: unnamed-GtkButtonAccessible-1 - column-span: 1 - row-span: 1 - position: 2 0 - tv - "table cell" - parent: tv - index: 1 - name: 999999 - state: enabled focusable selectable sensitive showing single-line transient visible - <AtkComponent> - layer: widget - alpha: 1 - <AtkText> - text: 999999 - character count: 6 - caret offset: -1 - default attributes: bg-color: <omitted> - bg-full-height: 0 - 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 - <AtkAction> - action 0 name: expand or contract - action 0 description: Expands or contracts the row in the tree view containing this cell - action 1 name: edit - action 1 description: Creates a widget in which the contents of the cell can be edited - action 2 name: activate - action 2 description: Activates the cell - <AtkTableCell> - table: tv - column-header[0]: unnamed-GtkButtonAccessible-1 - column-span: 1 - row-span: 1 - position: 2 0 diff --git a/testsuite/a11y/tree.ui b/testsuite/a11y/tree.ui deleted file mode 100644 index eadd2c3e98..0000000000 --- a/testsuite/a11y/tree.ui +++ /dev/null @@ -1,45 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<interface> - <!-- interface-requires gtk+ 3.0 --> - <object class="GtkListStore" id="store"> - <columns> - <column type="gchararray"/> - <column type="gchararray"/> - </columns> - <data> - <row><col id="0">One</col><col id="1">234</col></row> - <row><col id="0">Two</col><col id="1">567</col></row> - <row><col id="0">40.000</col><col id="1">999999</col></row> - </data> - </object> - <object class="GtkWindow" id="window1"> - <child> - <object class="GtkTreeView" id="tv"> - <property name="visible">True</property> - <property name="model">store</property> - <child> - <object class="GtkTreeViewColumn" id="col"> - <property name="title">Test</property> - <property name="visible">True</property> - <child> - <object class="GtkCellRendererText" id="cell1"> - <property name="visible">True</property> - </object> - <attributes> - <attribute name="text">0</attribute> - </attributes> - </child> - <child> - <object class="GtkCellRendererText" id="cell2"> - <property name="visible">True</property> - </object> - <attributes> - <attribute name="text">1</attribute> - </attributes> - </child> - </object> - </child> - </object> - </child> - </object> -</interface> diff --git a/testsuite/a11y/util.c b/testsuite/a11y/util.c deleted file mode 100644 index c64d2dad9a..0000000000 --- a/testsuite/a11y/util.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Copyright (C) 2011 Red Hat Inc. - * - * Author: - * Matthias Clasen <mclasen@redhat.com> - * - * 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, see <http://www.gnu.org/licenses/>. - */ - -#include <gtk/gtk.h> - -static void -test_toolkit_name (void) -{ - const char *s; - - s = atk_get_toolkit_name (); - g_assert_cmpstr (s, ==, "gtk"); -} - -static void -test_toolkit_version (void) -{ - const char *s; - - s = atk_get_toolkit_version (); - g_assert_cmpstr (s, ==, GTK_VERSION); -} - -static void -test_root (void) -{ - AtkObject *obj; - - obj = atk_get_root (); - - g_assert (atk_object_get_role (obj) == ATK_ROLE_APPLICATION); - g_assert (atk_object_get_parent (obj) == NULL); -} - -int -main (int argc, char *argv[]) -{ - gtk_test_init (&argc, &argv, NULL); - - g_test_add_func ("/util/toolkit-name", test_toolkit_name); - g_test_add_func ("/util/toolkit-version", test_toolkit_version); - g_test_add_func ("/util/root", test_root); - - return g_test_run (); -} diff --git a/testsuite/a11y/util.test.in b/testsuite/a11y/util.test.in deleted file mode 100644 index 5bab270a87..0000000000 --- a/testsuite/a11y/util.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/a11y/util --tap -k -Type=session -Output=TAP diff --git a/testsuite/a11y/value.c b/testsuite/a11y/value.c deleted file mode 100644 index f43acf933d..0000000000 --- a/testsuite/a11y/value.c +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Copyright (C) 2011 Red Hat Inc. - * Copyright (C) 2012 SUSE LLC. - * - * Author: - * Mike Gorse <mgorse@suse.com> - * - * 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, see <http://www.gnu.org/licenses/>. - */ - -#include <gtk/gtk.h> -#include <string.h> - -static void -set_value (GtkWidget *widget, - int value) -{ - if (GTK_IS_LEVEL_BAR (widget)) - gtk_level_bar_set_value (GTK_LEVEL_BAR (widget), value); - else if (GTK_IS_RANGE (widget)) - { - GtkAdjustment *adjustment = gtk_range_get_adjustment (GTK_RANGE (widget)); - gtk_adjustment_set_value (adjustment, value); - } - else if (GTK_IS_SPIN_BUTTON (widget)) - { - GtkAdjustment *adjustment = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (widget)); - gtk_adjustment_set_value (adjustment, value); - } -} - -typedef struct -{ - int count; - char *last_name; -} NotifyData; - -static void -notify_cb (GObject *obj, - GParamSpec *pspec, NotifyData *data) -{ - data->count++; - g_free (data->last_name); - data->last_name = g_strdup (pspec->name); -} - -static void -test_basic (GtkWidget *widget) -{ - NotifyData notify_data; - AtkObject *atk_object; - AtkValue *atk_value; - double value = 50; - double ret; - char *text; - - atk_object = gtk_widget_get_accessible (widget); - atk_value = ATK_VALUE (atk_object); - - memset (¬ify_data, 0, sizeof (notify_data)); - g_signal_connect (atk_object, "notify", G_CALLBACK (notify_cb), ¬ify_data); - set_value (widget, value); - g_assert_cmpint (notify_data.count, ==, 1); - g_assert_cmpstr (notify_data.last_name, ==, "accessible-value"); - - text = NULL; - atk_value_get_value_and_text (atk_value, &ret, &text); - g_assert_cmpfloat (ret, ==, value); - g_free (text); - - g_free (notify_data.last_name); - g_signal_handlers_disconnect_by_func (atk_object, G_CALLBACK (notify_cb), ¬ify_data); -} - -static void -setup_test (GtkWidget *widget) -{ - set_value (widget, 0); -} - -static void -add_value_test (const char *prefix, - GTestFixtureFunc test_func, - GtkWidget *widget) -{ - char *path; - - path = g_strdup_printf ("%s/%s", prefix, G_OBJECT_TYPE_NAME (widget)); - g_test_add_vtable (path, - 0, - g_object_ref (widget), - (GTestFixtureFunc) setup_test, - (GTestFixtureFunc) test_func, - (GTestFixtureFunc) g_object_unref); - g_free (path); -} - -static void -add_value_tests (GtkWidget *widget) -{ - g_object_ref_sink (widget); - add_value_test ("/value/basic", (GTestFixtureFunc) test_basic, widget); - g_object_unref (widget); -} - -int -main (int argc, char *argv[]) -{ - gtk_test_init (&argc, &argv, NULL); - - add_value_tests (gtk_spin_button_new_with_range (0, 100, 1)); - add_value_tests (gtk_level_bar_new_for_interval (0, 100)); - - return g_test_run (); -} diff --git a/testsuite/a11y/value.test.in b/testsuite/a11y/value.test.in deleted file mode 100644 index 08f1e31fb6..0000000000 --- a/testsuite/a11y/value.test.in +++ /dev/null @@ -1,4 +0,0 @@ -[Test] -Exec=@libexecdir@/installed-tests/gtk-4.0/a11y/value --tap -k -Type=session -Output=TAP diff --git a/testsuite/css/nodes/buttons.ui b/testsuite/css/nodes/buttons.ui index 65151e9b69..3b89c6dd60 100644 --- a/testsuite/css/nodes/buttons.ui +++ b/testsuite/css/nodes/buttons.ui @@ -66,11 +66,6 @@ <object class="GtkSwitch" id="button6"> <property name="can_focus">1</property> <property name="receives_default">1</property> - <child internal-child="accessible"> - <object class="AtkObject" id="button6-accessible"> - <property name="accessible-name">Test switch</property> - </object> - </child> <layout> <property name="left_attach">5</property> <property name="top_attach">0</property> diff --git a/testsuite/gtk/accessible.c b/testsuite/gtk/accessible.c deleted file mode 100644 index 5671e536a4..0000000000 --- a/testsuite/gtk/accessible.c +++ /dev/null @@ -1,49 +0,0 @@ -#include <gtk/gtk.h> - -static void -test_type (gconstpointer data) -{ - GType t = *(GType *)data; - GtkWidget *w; - AtkObject *a; - - w = (GtkWidget *)g_object_new (t, NULL); - if (g_type_is_a (t, G_TYPE_INITIALLY_UNOWNED)) - g_object_ref_sink (w); - - a = gtk_widget_get_accessible (w); - - g_assert (GTK_IS_ACCESSIBLE (a)); - g_assert (gtk_accessible_get_widget (GTK_ACCESSIBLE (a)) == w); - - g_object_unref (w); -} - -int -main (int argc, char *argv[]) -{ - const GType *tp; - guint i, n; - - gtk_test_init (&argc, &argv, NULL); - gtk_test_register_all_types (); - - tp = gtk_test_list_all_types (&n); - - for (i = 0; i < n; i++) - { - char *testname; - - if (!g_type_is_a (tp[i], GTK_TYPE_WIDGET) || - G_TYPE_IS_ABSTRACT (tp[i]) || - !G_TYPE_IS_INSTANTIATABLE (tp[i])) - continue; - - testname = g_strdup_printf ("/Accessible/%s", g_type_name (tp[i])); - g_test_add_data_func (testname, &tp[i], test_type); - - g_free (testname); - } - - return g_test_run (); -} diff --git a/testsuite/gtk/builder.c b/testsuite/gtk/builder.c index 8d8f9e3d01..6e514d4e55 100644 --- a/testsuite/gtk/builder.c +++ b/testsuite/gtk/builder.c @@ -1432,22 +1432,10 @@ test_widget (void) " <property name=\"orientation\">vertical</property>" " <child>" " <object class=\"GtkLabel\" id=\"label1\">" - " <child internal-child=\"accessible\">" - " <object class=\"AtkObject\" id=\"a11y-label1\">" - " <property name=\"AtkObject::accessible-name\">A Label</property>" - " </object>" - " </child>" - " <accessibility>" - " <relation target=\"button1\" type=\"label-for\"/>" - " </accessibility>" " </object>" " </child>" " <child>" " <object class=\"GtkButton\" id=\"button1\">" - " <accessibility>" - " <action action_name=\"click\" description=\"Sliff\"/>" - " <action action_name=\"clack\" translatable=\"yes\">Sniff</action>" - " </accessibility>" " </object>" " </child>" " </object>" @@ -1460,19 +1448,12 @@ test_widget (void) " <child>" " <object class=\"GtkLabel\" id=\"label1\">" " <property name=\"label\">Thelabel</property>" - " <accessibility>" - " <role type=\"static\"/>" - " </accessibility>" " </object>" " </child>" " </object>" "</interface>"; GtkBuilder *builder; GObject *window1, *button1, *label1; - AtkObject *accessible; - AtkRelationSet *relation_set; - AtkRelation *relation; - char *name; builder = builder_new_from_string (buffer, -1, NULL); button1 = gtk_builder_get_object (builder, "button1"); @@ -1494,28 +1475,14 @@ test_widget (void) window1 = gtk_builder_get_object (builder, "window1"); label1 = gtk_builder_get_object (builder, "label1"); + g_assert (GTK_IS_LABEL (label1)); - accessible = gtk_widget_get_accessible (GTK_WIDGET (label1)); - relation_set = atk_object_ref_relation_set (accessible); - g_assert_cmpint (atk_relation_set_get_n_relations (relation_set), ==, 1); - relation = atk_relation_set_get_relation (relation_set, 0); - g_assert (relation != NULL); - g_assert_true (ATK_IS_RELATION (relation)); - g_assert_cmpint (atk_relation_get_relation_type (relation), !=, ATK_RELATION_LABELLED_BY); - g_object_unref (relation_set); - - g_object_get (G_OBJECT (accessible), "accessible-name", &name, NULL); - g_assert_cmpstr (name, ==, "A Label"); - g_free (name); - gtk_window_destroy (GTK_WINDOW (window1)); g_object_unref (builder); builder = builder_new_from_string (buffer4, -1, NULL); label1 = gtk_builder_get_object (builder, "label1"); - - accessible = gtk_widget_get_accessible (GTK_WIDGET (label1)); - g_assert (atk_object_get_role (accessible) == ATK_ROLE_STATIC); + g_assert (GTK_IS_LABEL (label1)); g_object_unref (builder); } diff --git a/testsuite/gtk/focus-chain/widget-factory.ui b/testsuite/gtk/focus-chain/widget-factory.ui index ff594c9eca..bf09b8732b 100644 --- a/testsuite/gtk/focus-chain/widget-factory.ui +++ b/testsuite/gtk/focus-chain/widget-factory.ui @@ -2908,9 +2908,6 @@ bad things might happen.</property> <property name="margin-top">20</property> <property name="margin-bottom">20</property> <property name="label" translatable="yes">To free the princess, you have to slay the dragon.</property> - <accessibility> - <role type="static"/> - </accessibility> </object> </child> </object> @@ -3110,9 +3107,6 @@ bad things might happen.</property> <object class="GtkLabel" id="title_label"> <property name="label">Title:</property> <property name="xalign">1</property> - <accessibility> - <relation type="label-for" target="open_popover_entry"/> - </accessibility> </object> </child> <child> @@ -3120,9 +3114,6 @@ bad things might happen.</property> <property name="valign">start</property> <property name="label">Description:</property> <property name="xalign">1</property> - <accessibility> - <relation type="label-for" target="open_popover_textview"/> - </accessibility> <layout> <property name="top-attach">1</property> </layout> @@ -3138,9 +3129,6 @@ bad things might happen.</property> <property name="max-content-width">100</property> <child> <object class="GtkTextView" id="open_popover_textview"> - <accessibility> - <relation type="labelled-by" target="description_label"/> - </accessibility> </object> </child> <layout> @@ -3153,9 +3141,6 @@ bad things might happen.</property> <child> <object class="GtkEntry" id="open_popover_entry"> <property name="activates-default">1</property> - <accessibility> - <relation type="labelled-by" target="title_label"/> - </accessibility> <layout> <property name="left-attach">1</property> <property name="column-span">2</property> @@ -3234,9 +3219,6 @@ bad things might happen.</property> <child> <object class="GtkLabel"> <property name="label">No updates at this time</property> - <accessibility> - <role type="static"/> - </accessibility> </object> </child> </object> @@ -3245,9 +3227,6 @@ bad things might happen.</property> <child> <object class="GtkLabel"> <property name="label">You're in too deep!</property> - <accessibility> - <role type="static"/> - </accessibility> </object> </child> </object> diff --git a/testsuite/gtk/focus-chain/widget-factory2.ui b/testsuite/gtk/focus-chain/widget-factory2.ui index f0456fb3ed..abe48c0222 100644 --- a/testsuite/gtk/focus-chain/widget-factory2.ui +++ b/testsuite/gtk/focus-chain/widget-factory2.ui @@ -2909,9 +2909,6 @@ bad things might happen.</property> <property name="margin-top">20</property> <property name="margin-bottom">20</property> <property name="label" translatable="yes">To free the princess, you have to slay the dragon.</property> - <accessibility> - <role type="static"/> - </accessibility> </object> </child> </object> @@ -3111,9 +3108,6 @@ bad things might happen.</property> <object class="GtkLabel" id="title_label"> <property name="label">Title:</property> <property name="xalign">1</property> - <accessibility> - <relation type="label-for" target="open_popover_entry"/> - </accessibility> </object> </child> <child> @@ -3121,9 +3115,6 @@ bad things might happen.</property> <property name="valign">start</property> <property name="label">Description:</property> <property name="xalign">1</property> - <accessibility> - <relation type="label-for" target="open_popover_textview"/> - </accessibility> <layout> <property name="top-attach">1</property> </layout> @@ -3139,9 +3130,6 @@ bad things might happen.</property> <property name="max-content-width">100</property> <child> <object class="GtkTextView" id="open_popover_textview"> - <accessibility> - <relation type="labelled-by" target="description_label"/> - </accessibility> </object> </child> <layout> @@ -3154,9 +3142,6 @@ bad things might happen.</property> <child> <object class="GtkEntry" id="open_popover_entry"> <property name="activates-default">1</property> - <accessibility> - <relation type="labelled-by" target="title_label"/> - </accessibility> <layout> <property name="left-attach">1</property> <property name="column-span">2</property> @@ -3235,9 +3220,6 @@ bad things might happen.</property> <child> <object class="GtkLabel"> <property name="label">No updates at this time</property> - <accessibility> - <role type="static"/> - </accessibility> </object> </child> </object> @@ -3246,9 +3228,6 @@ bad things might happen.</property> <child> <object class="GtkLabel"> <property name="label">You're in too deep!</property> - <accessibility> - <role type="static"/> - </accessibility> </object> </child> </object> diff --git a/testsuite/gtk/focus-chain/widget-factory3.ui b/testsuite/gtk/focus-chain/widget-factory3.ui index c4e4b679c3..02c485c4b7 100644 --- a/testsuite/gtk/focus-chain/widget-factory3.ui +++ b/testsuite/gtk/focus-chain/widget-factory3.ui @@ -2909,9 +2909,6 @@ bad things might happen.</property> <property name="margin-top">20</property> <property name="margin-bottom">20</property> <property name="label" translatable="yes">To free the princess, you have to slay the dragon.</property> - <accessibility> - <role type="static"/> - </accessibility> </object> </child> </object> @@ -3111,9 +3108,6 @@ bad things might happen.</property> <object class="GtkLabel" id="title_label"> <property name="label">Title:</property> <property name="xalign">1</property> - <accessibility> - <relation type="label-for" target="open_popover_entry"/> - </accessibility> </object> </child> <child> @@ -3121,9 +3115,6 @@ bad things might happen.</property> <property name="valign">start</property> <property name="label">Description:</property> <property name="xalign">1</property> - <accessibility> - <relation type="label-for" target="open_popover_textview"/> - </accessibility> <layout> <property name="top-attach">1</property> </layout> @@ -3139,9 +3130,6 @@ bad things might happen.</property> <property name="max-content-width">100</property> <child> <object class="GtkTextView" id="open_popover_textview"> - <accessibility> - <relation type="labelled-by" target="description_label"/> - </accessibility> </object> </child> <layout> @@ -3154,9 +3142,6 @@ bad things might happen.</property> <child> <object class="GtkEntry" id="open_popover_entry"> <property name="activates-default">1</property> - <accessibility> - <relation type="labelled-by" target="title_label"/> - </accessibility> <layout> <property name="left-attach">1</property> <property name="column-span">2</property> @@ -3235,9 +3220,6 @@ bad things might happen.</property> <child> <object class="GtkLabel"> <property name="label">No updates at this time</property> - <accessibility> - <role type="static"/> - </accessibility> </object> </child> </object> @@ -3246,9 +3228,6 @@ bad things might happen.</property> <child> <object class="GtkLabel"> <property name="label">You're in too deep!</property> - <accessibility> - <role type="static"/> - </accessibility> </object> </child> </object> diff --git a/testsuite/gtk/meson.build b/testsuite/gtk/meson.build index f5815ea210..5063bb474f 100644 --- a/testsuite/gtk/meson.build +++ b/testsuite/gtk/meson.build @@ -21,7 +21,6 @@ endif # - 'suites': (array): additional test suites tests = [ { 'name': 'accel' }, - { 'name': 'accessible' }, { 'name': 'action' }, { 'name': 'adjustment' }, { 'name': 'bitset' }, diff --git a/testsuite/gtk/notify.c b/testsuite/gtk/notify.c index dda0f22d2b..58527375cf 100644 --- a/testsuite/gtk/notify.c +++ b/testsuite/gtk/notify.c @@ -373,8 +373,7 @@ test_type (gconstpointer data) return; /* non-GTK+ */ - if (g_str_equal (g_type_name (type), "AtkObject") || - g_str_equal (g_type_name (type), "GdkPixbufSimpleAnim")) + if (g_str_equal (g_type_name (type), "GdkPixbufSimpleAnim")) return; /* Deprecated, not getting fixed */ @@ -505,8 +504,7 @@ test_type (gconstpointer data) continue; /* non-GTK+ */ - if (g_str_equal (g_type_name (pspec->owner_type), "AtkObject") || - g_str_equal (g_type_name (pspec->owner_type), "GdkPixbufSimpleAnim") || + if (g_str_equal (g_type_name (pspec->owner_type), "GdkPixbufSimpleAnim") || g_str_equal (g_type_name (pspec->owner_type), "GMountOperation")) continue; diff --git a/testsuite/meson.build b/testsuite/meson.build index 47ce9a6134..64961f5dc7 100644 --- a/testsuite/meson.build +++ b/testsuite/meson.build @@ -42,6 +42,5 @@ subdir('gdk') subdir('gsk') subdir('gtk') subdir('css') -#subdir('a11y') subdir('tools') subdir('reftests') diff --git a/testsuite/tools/simplify-data-3to4/grid.expected b/testsuite/tools/simplify-data-3to4/grid.expected index 5005cc0725..f14ad0d248 100644 --- a/testsuite/tools/simplify-data-3to4/grid.expected +++ b/testsuite/tools/simplify-data-3to4/grid.expected @@ -65,11 +65,6 @@ <child> <object class="GtkSwitch" id="button6"> <property name="receives_default">1</property> - <child internal-child="accessible"> - <object class="AtkObject" id="button6-accessible"> - <property name="accessible-name">Test switch</property> - </object> - </child> <layout> <property name="left_attach">5</property> <property name="top_attach">0</property> diff --git a/testsuite/tools/simplify-data-3to4/grid.ui b/testsuite/tools/simplify-data-3to4/grid.ui index 29a723c0a7..30c0314937 100644 --- a/testsuite/tools/simplify-data-3to4/grid.ui +++ b/testsuite/tools/simplify-data-3to4/grid.ui @@ -75,11 +75,6 @@ <property name="active">False</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <child internal-child="accessible"> - <object class="AtkObject" id="button6-accessible"> - <property name="accessible-name">Test switch</property> - </object> - </child> </object> <packing> <property name="left_attach">5</property> |