More accurate calculation of "show_latest" field in header view.
[modest] / src / widgets / modest-header-view.c
index b08263c..e7eb3fe 100644 (file)
@@ -2516,9 +2516,24 @@ gint
 modest_header_view_get_show_latest (ModestHeaderView *header_view)
 {
        ModestHeaderViewPrivate *priv;
+       GtkTreeModel *sortable, *filter, *model;
+       gint result;
 
        priv = MODEST_HEADER_VIEW_GET_PRIVATE (header_view);
-       return priv->show_latest;
+
+       result = priv->show_latest;
+       sortable = gtk_tree_view_get_model (GTK_TREE_VIEW (header_view));
+       if (GTK_IS_TREE_MODEL_SORT (sortable)) {
+               filter = gtk_tree_model_sort_get_model (GTK_TREE_MODEL_SORT (sortable));
+               if (GTK_IS_TREE_MODEL_FILTER (filter)) {
+                       model = gtk_tree_model_filter_get_model (GTK_TREE_MODEL_FILTER (filter));
+                       if (model) {
+                               result = tny_gtk_header_list_model_get_show_latest (TNY_GTK_HEADER_LIST_MODEL (model));
+                       }
+               }
+       }
+
+       return result;
 }
 
 gint