a11y: Don't emit children-changed when nothing changed
When we have 0 columns, no children ever get added or removed.
This commit is contained in:
@ -1881,12 +1881,15 @@ _gtk_tree_view_accessible_add (GtkTreeView *treeview,
|
||||
g_signal_emit_by_name (accessible, "row-inserted", row, n_rows);
|
||||
|
||||
n_cols = get_n_columns (treeview);
|
||||
if (n_cols)
|
||||
{
|
||||
for (i = (row + 1) * n_cols; i < (row + n_rows + 1) * n_cols; i++)
|
||||
{
|
||||
/* Pass NULL as the child object, i.e. 4th argument */
|
||||
g_signal_emit_by_name (accessible, "children-changed::add", i, NULL, NULL);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
_gtk_tree_view_accessible_remove (GtkTreeView *treeview,
|
||||
@ -1920,6 +1923,8 @@ _gtk_tree_view_accessible_remove (GtkTreeView *treeview,
|
||||
g_signal_emit_by_name (accessible, "row-deleted", row, n_rows);
|
||||
|
||||
n_cols = get_n_columns (treeview);
|
||||
if (n_cols)
|
||||
{
|
||||
for (i = (n_rows + row + 1) * n_cols - 1; i >= (row + 1) * n_cols; i--)
|
||||
{
|
||||
/* Pass NULL as the child object, i.e. 4th argument */
|
||||
@ -1935,6 +1940,7 @@ _gtk_tree_view_accessible_remove (GtkTreeView *treeview,
|
||||
g_hash_table_iter_remove (&iter);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
_gtk_tree_view_accessible_changed (GtkTreeView *treeview,
|
||||
|
Reference in New Issue
Block a user