Commit dfc7d262 authored by Matthias Clasen's avatar Matthias Clasen
Browse files

a11y: Tweak name and description computation

Instead of falling back to the role nick for both,
fall back to the class name for the name, and to
the empty string for the description. This makes
labels show up in Accerciser the same way they
did in GTK 3, and seems more useful to me than
the alternative.
parent 77d1026c
Pipeline #222618 passed with stages
in 46 minutes and 14 seconds
......@@ -805,11 +805,8 @@ gtk_at_context_get_name_accumulate (GtkATContext *self,
if (names->len != 0)
return;
GEnumClass *enum_class = g_type_class_peek (GTK_TYPE_ACCESSIBLE_ROLE);
GEnumValue *enum_value = g_enum_get_value (enum_class, role);
if (enum_value != NULL)
g_ptr_array_add (names, (char *) enum_value->value_nick);
if (self->accessible)
g_ptr_array_add (names, (char *)G_OBJECT_TYPE_NAME (self->accessible));
}
static void
......@@ -871,8 +868,8 @@ gtk_at_context_get_description_accumulate (GtkATContext *self,
break;
}
/* If there is no label or labelled-by attribute, hidden elements
* have no name
/* If there is no description or described-by attribute, hidden elements
* have no description
*/
if (gtk_accessible_attribute_set_contains (self->states, GTK_ACCESSIBLE_STATE_HIDDEN))
{
......@@ -881,16 +878,6 @@ gtk_at_context_get_description_accumulate (GtkATContext *self,
if (gtk_boolean_accessible_value_get (value))
return;
}
/* This fallback is in place only for unlabelled elements */
if (labels->len != 0)
return;
GEnumClass *enum_class = g_type_class_peek (GTK_TYPE_ACCESSIBLE_ROLE);
GEnumValue *enum_value = g_enum_get_value (enum_class, role);
if (enum_value != NULL)
g_ptr_array_add (labels, (char *) enum_value->value_nick);
}
/*< private >
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment