From: Jose Dapena Paz Date: Wed, 14 Jan 2009 09:48:30 +0000 (+0000) Subject: Added new filter in folder view to hide mandatory folders. X-Git-Tag: git_migration_finished~809 X-Git-Url: http://git.maemo.org/git/?p=modest;a=commitdiff_plain;h=0b1d178419df194132bd357bc0ef85ee79e2be5b Added new filter in folder view to hide mandatory folders. pmo-trunk-r7137 --- diff --git a/src/widgets/modest-folder-view.c b/src/widgets/modest-folder-view.c index eddc33f..810976f 100644 --- a/src/widgets/modest-folder-view.c +++ b/src/widgets/modest-folder-view.c @@ -1686,6 +1686,36 @@ filter_row (GtkTreeModel *model, GtkTreeIter *iter, gpointer data) } } + if (retval && (priv->filter & MODEST_FOLDER_VIEW_FILTER_HIDE_MANDATORY_FOLDERS)) { + if (TNY_IS_FOLDER (instance)) { + TnyFolderType guess_type; + + if (TNY_FOLDER_TYPE_NORMAL) { + guess_type = modest_tny_folder_guess_folder_type (TNY_FOLDER (instance)); + } else { + guess_type = type; + } + + switch (type) { + case TNY_FOLDER_TYPE_OUTBOX: + case TNY_FOLDER_TYPE_SENT: + case TNY_FOLDER_TYPE_DRAFTS: + case TNY_FOLDER_TYPE_ARCHIVE: + case TNY_FOLDER_TYPE_INBOX: + retval = FALSE; + break; + case TNY_FOLDER_TYPE_UNKNOWN: + case TNY_FOLDER_TYPE_NORMAL: + break; + default: + break; + } + + } else if (TNY_IS_ACCOUNT (instance)) { + retval = FALSE; + } + } + /* Free */ g_object_unref (instance); diff --git a/src/widgets/modest-folder-view.h b/src/widgets/modest-folder-view.h index 5c5ae4a..211b7a5 100644 --- a/src/widgets/modest-folder-view.h +++ b/src/widgets/modest-folder-view.h @@ -58,6 +58,7 @@ typedef enum _ModestFolderViewCellStyle { typedef enum _ModestFolderViewFilter { MODEST_FOLDER_VIEW_FILTER_NONE = 0, MODEST_FOLDER_VIEW_FILTER_CAN_HAVE_FOLDERS = 1 << 0, + MODEST_FOLDER_VIEW_FILTER_HIDE_MANDATORY_FOLDERS = 1 << 1, } ModestFolderViewFilter; typedef struct _ModestFolderView ModestFolderView;