X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=src%2Fwidgets%2Fmodest-folder-view.c;h=64e9281d8eedadc46b88e90be3650d094f9ff689;hb=0b31f19a72f3e3e14256a034bae44ed692f1289c;hp=beb2ab46293835482684048882bab66c7772c805;hpb=a0b1625d0dc03f5750b9cd3d2e009328295609ee;p=modest diff --git a/src/widgets/modest-folder-view.c b/src/widgets/modest-folder-view.c index beb2ab4..64e9281 100644 --- a/src/widgets/modest-folder-view.c +++ b/src/widgets/modest-folder-view.c @@ -519,6 +519,7 @@ convert_parent_folders_to_dots (gchar **item_name) static void format_compact_style (gchar **item_name, GObject *instance, + const gchar *mailbox, gboolean bold, gboolean multiaccount, gboolean *use_markup) @@ -535,6 +536,22 @@ format_compact_style (gchar **item_name, folder_type = tny_folder_get_folder_type (folder); is_special = (get_cmp_pos (folder_type, folder)!= 4); + if (mailbox) { + /* Remove mailbox prefix if any */ + gchar *prefix = g_strconcat (mailbox, MODEST_FOLDER_PATH_SEPARATOR, NULL); + if (g_str_has_prefix (*item_name, prefix)) { + gchar *new_item_name; + + new_item_name = g_strdup (*item_name + strlen (prefix)); + if (!g_ascii_strcasecmp (new_item_name, "Inbox")) { + g_free (new_item_name); + new_item_name = g_strdup (_("mcen_me_folder_inbox")); + } + g_free (*item_name); + *item_name = new_item_name; + } + } + if (!is_special || multiaccount) { TnyAccount *account = tny_folder_get_account (folder); const gchar *folder_name; @@ -680,7 +697,7 @@ text_cell_data (GtkTreeViewColumn *column, multiaccount = (priv->style == MODEST_FOLDER_VIEW_STYLE_SHOW_ALL); /* Convert item_name to markup */ - format_compact_style (&item_name, instance, + format_compact_style (&item_name, instance, priv->mailbox, item_weight == 800, multiaccount, &use_markup); } @@ -1978,8 +1995,22 @@ filter_row (GtkTreeModel *model, GtkTreeIter *iter, gpointer data) } if (retval && (priv->filter & MODEST_FOLDER_VIEW_FILTER_HIDE_LOCAL_FOLDERS)) { - if (!modest_tny_folder_store_is_remote (TNY_FOLDER_STORE (instance))) { - return FALSE; + if (TNY_IS_ACCOUNT (instance)) { + if (modest_tny_account_is_virtual_local_folders (TNY_ACCOUNT (instance))) + return FALSE; + } else if (TNY_IS_FOLDER (instance)) { + if (modest_tny_folder_is_local_folder (TNY_FOLDER (instance))) + return FALSE; + } + } + + if (retval && (priv->filter & MODEST_FOLDER_VIEW_FILTER_HIDE_MCC_FOLDERS)) { + if (TNY_IS_ACCOUNT (instance)) { + if (modest_tny_account_is_memory_card_account (TNY_ACCOUNT (instance))) + return FALSE; + } else if (TNY_IS_FOLDER (instance)) { + if (modest_tny_folder_is_memory_card_folder (TNY_FOLDER (instance))) + return FALSE; } }