Blob Blame History Raw
diff -up evolution-3.12.11/e-util/gal-a11y-e-table-item.c.gala11yetableitem-row-count evolution-3.12.11/e-util/gal-a11y-e-table-item.c
--- evolution-3.12.11/e-util/gal-a11y-e-table-item.c.gala11yetableitem-row-count	2016-06-20 15:26:34.288580802 +0200
+++ evolution-3.12.11/e-util/gal-a11y-e-table-item.c	2016-06-20 15:26:34.410580797 +0200
@@ -823,6 +823,25 @@ eti_rows_deleted (ETableModel *model,
 }
 
 static void
+eti_model_changed (ETableModel *model,
+		   AtkObject *table_item)
+{
+	GalA11yETableItemPrivate *priv;
+	gint row_count;
+
+	g_return_if_fail (GAL_A11Y_IS_E_TABLE_ITEM (table_item));
+
+	priv = GET_PRIVATE (table_item);
+
+	row_count = e_table_model_row_count (model);
+
+	if (priv->rows != row_count) {
+		priv->rows = row_count;
+		g_signal_emit_by_name (table_item, "visible-data-changed");
+	}
+}
+
+static void
 eti_tree_model_node_changed_cb (ETreeModel *model,
                                 ETreePath node,
                                 ETableItem *eti)
@@ -986,6 +1005,9 @@ eti_real_initialize (AtkObject *obj,
 		model, "model-rows-deleted",
 		G_CALLBACK (eti_rows_deleted), obj, 0);
 	g_signal_connect_object (
+		model, "model-changed",
+		G_CALLBACK (eti_model_changed), obj, 0);
+	g_signal_connect_object (
 		eti->header, "structure_change",
 		G_CALLBACK (eti_header_structure_changed), obj, 0);
 }