*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#ifdef HAVE_CONFIG_H
item->data = NULL;
item->parent_stype = -1;
+ item->sort_key = SORT_BY_DATE;
+ item->sort_type = SORT_ASCENDING;
+
item->prefs = folder_item_prefs_new();
return item;
return (gint_a - gint_b);
}
-gint folder_item_open(FolderItem *item)
+void folder_item_process_open(FolderItem *item)
{
gchar *buf;
- g_return_val_if_fail(item->no_select == FALSE, -1);
-
+ if (item == NULL)
+ return;
if((item->folder->klass->scan_required != NULL) &&
(item->folder->klass->scan_required(item->folder, item))) {
folder_item_scan_full(item, TRUE);
+ } else {
+ folder_item_syncronize_flags(item);
}
- folder_item_syncronize_flags(item);
/* Processing */
buf = g_strdup_printf(_("Processing (%s)...\n"),
folder_item_apply_processing(item);
- item->opened = TRUE;
-
debug_print("done.\n");
+ return;
+}
+
+gint folder_item_open(FolderItem *item)
+{
+ g_return_val_if_fail(item->no_select == FALSE, -1);
+
+ item->opened = TRUE;
return 0;
}
g_slist_free(folder_list);
if (new_list != NULL) {
+ GSList *tmp_list = NULL;
newmsg_list = get_msginfos(item, new_list);
g_slist_free(new_list);
+ tmp_list = g_slist_concat(g_slist_copy(exists_list), g_slist_copy(newmsg_list));
+ syncronize_flags(item, tmp_list);
+ g_slist_free(tmp_list);
+ } else {
+ syncronize_flags(item, exists_list);
}
- syncronize_flags(item, exists_list);
-
folder_item_update_freeze();
if (newmsg_list != NULL) {
GSList *elem;
else
tag = folder_item_get_xml(item->folder, item);
- return xml_node_new(tag, NULL);;
+ return xml_node_new(tag, NULL);
}
static GNode *folder_get_xml_node(Folder *folder)