#include "modest-widget-memory.h"
#include <modest-tny-platform-factory.h>
+#include <modest-tny-folder.h>
#include <widgets/modest-header-view.h>
#include <widgets/modest-msg-view.h>
#include <widgets/modest-folder-view.h>
get_keyname (ModestConf *conf, const gchar *name, const gchar *param)
{
gchar *esc_name, *keyname;
- esc_name = modest_conf_key_escape (conf, name);
+ esc_name = modest_conf_key_escape (name);
keyname = g_strdup_printf ("%s/%s/%s",
MODEST_CONF_WIDGET_NAMESPACE,
get_keyname_with_type (ModestConf *conf, const gchar *name, guint type, const gchar *param)
{
gchar *esc_name, *keyname;
- esc_name = modest_conf_key_escape (conf, name);
+ esc_name = modest_conf_key_escape (name);
keyname = g_strdup_printf ("%s/%s/%s_%d",
MODEST_CONF_WIDGET_NAMESPACE,
TnyFolder *folder;
TnyFolderType type;
+ if (modest_header_view_get_state (header_view) &
+ MODEST_HEADER_VIEW_STATE_IS_EMPTY)
+ return TRUE; /* don't save the settings in the empty case */
+
folder = modest_header_view_get_folder (header_view);
if (!folder)
return TRUE; /* no folder: no settings */
- type = modest_folder_view_guess_folder_type (folder);
+ type = modest_tny_folder_guess_folder_type (folder);
key = get_keyname_with_type (conf, name, type, PARAM_COLUMN_WIDTH);
cursor = cols = modest_header_view_get_columns (header_view);
modest_conf_set_string (conf, key, str->str, NULL);
- g_warning ("save %s", key);
-
g_free (key);
g_string_free (str, TRUE);
g_list_free (cols);
if (!folder)
return TRUE; /* no folder: no settings */
- type = modest_folder_view_guess_folder_type (folder);
+ type = modest_tny_folder_guess_folder_type (folder);
key = get_keyname_with_type (conf, name, type, PARAM_COLUMN_WIDTH);
if (modest_conf_key_exists (conf, key, NULL)) {
widthcursor = colwidths;
colcursor = viewcolumns = gtk_tree_view_get_columns (GTK_TREE_VIEW(header_view));
while (colcursor && widthcursor) {
- gtk_tree_view_column_set_fixed_width(GTK_TREE_VIEW_COLUMN(colcursor->data),
- GPOINTER_TO_INT(widthcursor->data));
+ int width = GPOINTER_TO_INT(widthcursor->data);
+ if (width > 0)
+ gtk_tree_view_column_set_fixed_width(GTK_TREE_VIEW_COLUMN(colcursor->data),
+ width);
colcursor = g_list_next (colcursor);
widthcursor = g_list_next (widthcursor);
}
}
}
- g_warning ("restore %s", key);
-
g_free (key);
return TRUE;
}
else if (MODEST_IS_MSG_VIEW(widget))
return save_settings_msg_view (conf, MODEST_MSG_VIEW(widget), name);
else if (GTK_IS_WIDGET(widget))
- return save_settings_widget (conf, widget, name);
+ return save_settings_widget (conf, GTK_WIDGET(widget), name);
g_printerr ("modest: %p (%s) is not a known widget\n", widget, name);
return FALSE;
else if (MODEST_IS_MSG_VIEW(widget))
return restore_settings_msg_view (conf, MODEST_MSG_VIEW(widget), name);
else if (GTK_IS_WIDGET(widget))
- return restore_settings_widget (conf, widget, name);
+ return restore_settings_widget (conf, GTK_WIDGET(widget), name);
g_printerr ("modest: %p (%s) is not a known widget\n", widget, name);
return FALSE;