diff --git a/shell/platform/linux/fl_accessible_node.cc b/shell/platform/linux/fl_accessible_node.cc index 21cdb24de985a..2752b432cb0d8 100644 --- a/shell/platform/linux/fl_accessible_node.cc +++ b/shell/platform/linux/fl_accessible_node.cc @@ -173,6 +173,13 @@ static AtkRole fl_accessible_node_get_role(AtkObject* accessible) { if ((self->flags & kFlutterSemanticsFlagIsButton) != 0) { return ATK_ROLE_PUSH_BUTTON; } + if ((self->flags & (kFlutterSemanticsFlagHasCheckedState | + kFlutterSemanticsFlagHasToggledState)) != 0) { + return ATK_ROLE_CHECK_BOX; + } + if ((self->flags & kFlutterSemanticsFlagIsSlider) != 0) { + return ATK_ROLE_SLIDER; + } if ((self->flags & kFlutterSemanticsFlagIsTextField) != 0) { return ATK_ROLE_TEXT; }