Add Treeview accessibility support (#4907)

This commit is contained in:
Montel Laurent 2024-03-21 15:18:52 +01:00 committed by GitHub
parent c2517008d8
commit 4844b84e0c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 12 additions and 0 deletions

View file

@ -312,6 +312,8 @@ cpp! {{
i_slint_core::items::AccessibleRole::Tab => QAccessible_Role_PageTab,
i_slint_core::items::AccessibleRole::Text => QAccessible_Role_StaticText,
i_slint_core::items::AccessibleRole::ProgressIndicator => QAccessible_Role_ProgressBar,
i_slint_core::items::AccessibleRole::Table => QAccessible_Role_Table,
i_slint_core::items::AccessibleRole::Tree => QAccessible_Role_Tree,
i_slint_core::items::AccessibleRole::TextInput => QAccessible_Role_EditableText,
}
});

View file

@ -361,6 +361,8 @@ impl AccessKitAdapter {
i_slint_core::items::AccessibleRole::Spinbox => Role::SpinButton,
i_slint_core::items::AccessibleRole::Tab => Role::Tab,
i_slint_core::items::AccessibleRole::Text => Role::StaticText,
i_slint_core::items::AccessibleRole::Table => Role::Table,
i_slint_core::items::AccessibleRole::Tree => Role::Tree,
i_slint_core::items::AccessibleRole::TextInput => Role::TextInput,
i_slint_core::items::AccessibleRole::ProgressIndicator => {
Role::ProgressIndicator

View file

@ -343,6 +343,10 @@ macro_rules! for_each_enums {
Tab,
/// The role for a [`Text`](elements.md#text) element. It's automatically applied.
Text,
/// The role for a [`TableView`](../widgets/standardtableview.md ) or behaves like one.
Table,
/// The role for a TreeView or behaves like one. (Not provided yet)
Tree,
/// The element is a [`ProgressIndicator`](../widgets/progressindicator.md) or behaves like one.
ProgressIndicator,
/// The role for widget with editable text such as a

View file

@ -10,6 +10,7 @@ component TableViewColumn inherits Rectangle {
callback clicked <=> i-touch-area.clicked;
callback adjust-size(/* size **/ length);
accessible-role: table;
background: transparent;

View file

@ -9,6 +9,7 @@ component TableViewColumn inherits Rectangle {
callback clicked <=> i-touch-area.clicked;
callback adjust_size(length);
accessible-role: table;
background: FluentPalette.background;

View file

@ -10,6 +10,7 @@ component TableViewColumn inherits Rectangle {
callback clicked <=> i-state-layer.clicked;
callback adjust-size(/* size */ length);
accessible-role: table;
i-state-layer := StateLayer {
background: MaterialPalette.accent-background;

View file

@ -11,6 +11,7 @@ export component StandardTableView {
callback sort-descending(int);
callback row-pointer-event(int /* row-index */, PointerEvent /* event */, Point /* absolute mouse position */);
callback current-row-changed(int /* current-row */);
accessible-role: table;
out property <int> current-sort-column: -1;
in-out property <[TableColumn]> columns;