widget: Don't let abstract role slip through
authorMatthias Clasen <mclasen@redhat.com>
Wed, 21 Jun 2023 20:05:29 +0000 (16:05 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Wed, 21 Jun 2023 20:18:33 +0000 (16:18 -0400)
When there isn't an accessible role set on the
instance or in class_init, we want to default
to 'generic'. There was one place where we
failed to do so.

gtk/gtkwidget.c

index 8576010eb33d9b4e2f64cca87923b90fc4db92cd..dd2920e59778ca1f3ed3a28d0f0c4295499384de 100644 (file)
@@ -2401,6 +2401,8 @@ gtk_widget_root_at_context (GtkWidget *self)
   /* Reset the accessible role to its current value */
   if (role == GTK_ACCESSIBLE_ROLE_WIDGET)
     role = GTK_WIDGET_GET_CLASS (self)->priv->accessible_role;
+  if (role == GTK_ACCESSIBLE_ROLE_WIDGET)
+    role = GTK_ACCESSIBLE_ROLE_GENERIC;
 
   gtk_at_context_set_accessible_role (priv->at_context, role);
   if (priv->root)