2007-06-13 Murray Cumming <murrayc@murrayc.com>
[modest] / src / modest-widget-memory.c
index faf0cd8..a5ceb76 100644 (file)
@@ -393,9 +393,6 @@ save_settings_folder_view (ModestConf *conf, ModestFolderView *folder_view,
 {
        gchar *key;
        const gchar* account_id;
-       GtkTreeSelection *selection;
-       GtkTreeModel *model;
-       GtkTreeIter iter;
 
        /* Save the visible account */
        key = _modest_widget_memory_get_keyname (name, "visible_server_account_id");
@@ -403,22 +400,10 @@ save_settings_folder_view (ModestConf *conf, ModestFolderView *folder_view,
        account_id = modest_folder_view_get_account_id_of_visible_server_account (folder_view);
        if (account_id)
                modest_conf_set_string (conf, key, account_id, NULL);
+       else
+               modest_conf_remove_key (conf, key, NULL);
        g_free (key);
 
-       /* Save the last selected folder */
-       key = _modest_widget_memory_get_keyname (name, "last_selected_path");
-       selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (folder_view));
-       if (gtk_tree_selection_get_selected (selection, &model, &iter)) {
-               gchar *str;
-               GtkTreePath *path = gtk_tree_model_get_path (model, &iter);
-               str = gtk_tree_path_to_string (path);
-               modest_conf_set_string (conf, key, str, NULL);
-               g_free (str);
-               gtk_tree_path_free (path);
-       }
-       g_free (key);
-
-
        return TRUE;
 }
 
@@ -427,7 +412,7 @@ restore_settings_folder_view (ModestConf *conf,
                              ModestFolderView *folder_view,
                              const gchar *name)
 {
-       gchar *key, *account_id, *str;
+       gchar *key, *account_id;
 
        /* Restore the visible account */
        key = _modest_widget_memory_get_keyname (name, "visible_server_account_id");
@@ -462,23 +447,8 @@ restore_settings_folder_view (ModestConf *conf,
 
        g_free (key);
 
-       /* Restore the last selected folder. Check first that the model is not NULL */
-       if (gtk_tree_view_get_model (GTK_TREE_VIEW (folder_view))) {
-               key = _modest_widget_memory_get_keyname (name, "last_selected_path");
-               if (modest_conf_key_exists (conf, key, NULL)) {
-                       GtkTreePath *path;
-                       GtkTreeSelection *selection;
-
-                       selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (folder_view));
-                       str = modest_conf_get_string (conf, key, NULL);
-                       path = gtk_tree_path_new_from_string ((const gchar *) str);
-                       gtk_tree_view_expand_to_path (GTK_TREE_VIEW (folder_view), path);
-                       gtk_tree_selection_select_path (selection, path);
-                       g_free (str);
-                       gtk_tree_path_free (path);
-               }
-               g_free (key);
-       }
+       /* Select the first INBOX folder */
+       modest_folder_view_select_first_inbox_or_local (folder_view);
 
        return TRUE;
 }