mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2025-01-14 06:10:21 +00:00
a11y: Set accessible role for GtkLinkButton
Set the accessible role for GtkLinkButton to button. We don't use the 'link' role since ARIA says "if it behaves like a button, use 'button'". Update docs and add a test. This changes should not be neccessary, since GtkLinkButton derives from GtkButton, see #2965.
This commit is contained in:
parent
c68fe1053a
commit
144114bf40
@ -46,7 +46,7 @@ Each role name is part of the #GtkAccessibleRole enumeration.
|
|||||||
| Role name | Description | Related GTK widget |
|
| Role name | Description | Related GTK widget |
|
||||||
|-----------|-------------|--------------------|
|
|-----------|-------------|--------------------|
|
||||||
| `ALERT` | A message with important information | - |
|
| `ALERT` | A message with important information | - |
|
||||||
| `BUTTON` | A control that performs an action when pressed | #GtkButton |
|
| `BUTTON` | A control that performs an action when pressed | #GtkButton, #GtkLinkButton |
|
||||||
| `CHECKBOX` | A control that has three possible value: `true`, `false`, or `undefined` | #GtkCheckButton |
|
| `CHECKBOX` | A control that has three possible value: `true`, `false`, or `undefined` | #GtkCheckButton |
|
||||||
| `COLUMNHEADER` | The header of a column in a list or grid | - |
|
| `COLUMNHEADER` | The header of a column in a list or grid | - |
|
||||||
| `COMBOBOX` | A control that can be expanded to show a list of possible values to select | #GtkComboBox |
|
| `COMBOBOX` | A control that can be expanded to show a list of possible values to select | #GtkComboBox |
|
||||||
|
@ -47,6 +47,10 @@
|
|||||||
*
|
*
|
||||||
* GtkLinkButton has a single CSS node with name button. To differentiate
|
* GtkLinkButton has a single CSS node with name button. To differentiate
|
||||||
* it from a plain #GtkButton, it gets the .link style class.
|
* it from a plain #GtkButton, it gets the .link style class.
|
||||||
|
*
|
||||||
|
* # Accessibility
|
||||||
|
*
|
||||||
|
* GtkLinkButton uses the #GTK_ACCESSIBKE_ROLE_BUTTON role.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
@ -217,6 +221,7 @@ gtk_link_button_class_init (GtkLinkButtonClass *klass)
|
|||||||
G_TYPE_BOOLEAN, 0);
|
G_TYPE_BOOLEAN, 0);
|
||||||
|
|
||||||
gtk_widget_class_set_css_name (widget_class, I_("button"));
|
gtk_widget_class_set_css_name (widget_class, I_("button"));
|
||||||
|
gtk_widget_class_set_accessible_role (widget_class, GTK_ACCESSIBLE_ROLE_BUTTON);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* GtkLinkButton|clipboard.copy:
|
* GtkLinkButton|clipboard.copy:
|
||||||
|
@ -25,6 +25,28 @@ button_label (void)
|
|||||||
g_object_unref (button);
|
g_object_unref (button);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
linkbutton_role (void)
|
||||||
|
{
|
||||||
|
GtkWidget *button = gtk_link_button_new ("Hello");
|
||||||
|
g_object_ref_sink (button);
|
||||||
|
|
||||||
|
gtk_test_accessible_assert_role (button, GTK_ACCESSIBLE_ROLE_BUTTON);
|
||||||
|
|
||||||
|
g_object_unref (button);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
linkbutton_label (void)
|
||||||
|
{
|
||||||
|
GtkWidget *button = gtk_link_button_new ("Hello");
|
||||||
|
g_object_ref_sink (button);
|
||||||
|
|
||||||
|
gtk_test_accessible_assert_property (button, GTK_ACCESSIBLE_PROPERTY_LABEL, "Hello");
|
||||||
|
|
||||||
|
g_object_unref (button);
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
main (int argc, char *argv[])
|
main (int argc, char *argv[])
|
||||||
{
|
{
|
||||||
@ -32,6 +54,8 @@ main (int argc, char *argv[])
|
|||||||
|
|
||||||
g_test_add_func ("/a11y/button/role", button_role);
|
g_test_add_func ("/a11y/button/role", button_role);
|
||||||
g_test_add_func ("/a11y/button/label", button_label);
|
g_test_add_func ("/a11y/button/label", button_label);
|
||||||
|
g_test_add_func ("/a11y/linkbutton/role", linkbutton_role);
|
||||||
|
g_test_add_func ("/a11y/linkbutton/label", linkbutton_label);
|
||||||
|
|
||||||
return g_test_run ();
|
return g_test_run ();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user