gint sort_flag_id = 0;
folder = modest_header_view_get_folder (header_view);
- if (!folder || modest_header_view_is_empty (header_view))
+ if (!folder || modest_header_view_is_empty (header_view)) {
+ if (folder)
+ g_object_unref (folder);
return TRUE; /* no non-empty folder: no settings */
+ }
type = modest_tny_folder_guess_folder_type (folder);
style = modest_header_view_get_style (header_view);
- g_free (key);
+ g_free (key);
+ g_free (sort_key);
g_string_free (str, TRUE);
g_list_free (cols);
g_object_unref (G_OBJECT (folder));
gint sort_colid = -1, sort_type;
folder = modest_header_view_get_folder (header_view);
- if (!folder || modest_header_view_is_empty (header_view))
- return TRUE; /* no non-empty folder: no settings */
+ if (!folder)
+ return TRUE; /* no folder: no settings */
- type = modest_tny_folder_guess_folder_type (folder); style = modest_header_view_get_style (header_view);
+ type = modest_tny_folder_guess_folder_type (folder);
+ style = modest_header_view_get_style (header_view);
key = _modest_widget_memory_get_keyname_with_double_type (name, type, style,
MODEST_WIDGET_MEMORY_PARAM_COLUMN_WIDTH);
sort_key = _modest_widget_memory_get_keyname_with_double_type (name, type, style,
- MODEST_WIDGET_MEMORY_PARAM_COLUMN_SORT);
+ MODEST_WIDGET_MEMORY_PARAM_COLUMN_SORT);
if (modest_conf_key_exists (conf, sort_key, NULL)) {
gchar *value = modest_conf_get_string (conf, sort_key, NULL);
}
if (sort_colid >= 0) {
- GtkTreeModel *sortable = gtk_tree_view_get_model (GTK_TREE_VIEW (header_view));
+ GtkTreeModel *sortable =
+ gtk_tree_model_filter_get_model (
+ GTK_TREE_MODEL_FILTER (gtk_tree_view_get_model (GTK_TREE_VIEW (header_view))));
if (sort_colid == TNY_GTK_HEADER_LIST_MODEL_FLAGS_COLUMN)
modest_header_view_sort_by_column_id (header_view, 0, sort_type);
gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE(sortable),
}
g_free (key);
+ g_free (sort_key);
+
g_object_unref (G_OBJECT (folder));
return TRUE;
g_return_val_if_fail (conf, FALSE);
g_return_val_if_fail (widget, FALSE);
g_return_val_if_fail (name, FALSE);
-
+
if (GTK_IS_WINDOW(widget))
return restore_settings_window (conf, GTK_WINDOW(widget), name);
else if (GTK_IS_PANED(widget))