[anjal] Saner view for trash folders. No strikes etc. More to do.
- From: Srinivasa Ragavan <sragavan src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [anjal] Saner view for trash folders. No strikes etc. More to do.
- Date: Wed, 26 Aug 2009 06:21:52 +0000 (UTC)
commit f88a1020e35d31625b6eeafecb994bf65a526f6b
Author: Srinivasa Ragavan <sragavan novell com>
Date: Wed Aug 26 11:51:12 2009 +0530
Saner view for trash folders. No strikes etc. More to do.
src/em-tree-store.c | 3 ++-
src/em-tree-store.h | 2 ++
src/mail-folder-view.c | 9 ++++++---
3 files changed, 10 insertions(+), 4 deletions(-)
---
diff --git a/src/em-tree-store.c b/src/em-tree-store.c
index deb0aa2..9084dc9 100644
--- a/src/em-tree-store.c
+++ b/src/em-tree-store.c
@@ -587,7 +587,8 @@ emts_init(EMTreeStore *emts)
pthread_mutex_init(&p->lock, NULL);
e_dlist_init(&p->changes);
-
+ emts->trash = FALSE;
+ emts->junk = FALSE;
emts->root = emts_node_alloc(p);
}
diff --git a/src/em-tree-store.h b/src/em-tree-store.h
index c37109c..c16ba32 100644
--- a/src/em-tree-store.h
+++ b/src/em-tree-store.h
@@ -94,6 +94,8 @@ struct _EMTreeStore
guint32 stamp;
sort_func func;
gboolean sort_ascending;
+ gboolean trash;
+ gboolean junk;
};
struct _EMTreeStoreClass
diff --git a/src/mail-folder-view.c b/src/mail-folder-view.c
index 0175186..92e48b5 100644
--- a/src/mail-folder-view.c
+++ b/src/mail-folder-view.c
@@ -440,6 +440,8 @@ mfv_got_folder(char *uri, CamelFolder *folder, void *data)
}
camel_object_ref(folder);
+ ((EMTreeStore *)mfv->model)->junk = folder->folder_flags & CAMEL_FOLDER_IS_JUNK;
+ ((EMTreeStore *)mfv->model)->trash = folder->folder_flags & CAMEL_FOLDER_IS_TRASH;
mfv->search = camel_object_meta_get (folder, "anjal:search");
mfv->search_state = camel_object_meta_get (folder, "anjal:search_state");
@@ -712,6 +714,7 @@ draw_text (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *
gboolean bold, ellipsize, strike, markup;
gboolean unread = FALSE;
guint32 flags;
+ EMTreeStore *emts = (EMTreeStore *)tree_model;
GtkTreeIter sel_iter;
GtkTreeSelection *sel = gtk_tree_view_get_selection (mfv->tree);
gtk_tree_selection_get_selected (sel, NULL, &sel_iter);
@@ -763,7 +766,7 @@ draw_text (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *
if(!mfv->priv->light)
unread = g_value_get_boolean (&v1);
flags = g_value_get_uint (&v);
- g_object_set ((GObject *)child,"strikethrough", (strike && (flags &CAMEL_MESSAGE_DELETED)),
+ g_object_set ((GObject *)child,"strikethrough", (!emts->trash && strike && (flags &CAMEL_MESSAGE_DELETED)),
"ellipsize", ellipsize ? PANGO_ELLIPSIZE_END : PANGO_ELLIPSIZE_NONE, NULL);
if (bold) {
if ( mfv->priv->light)
@@ -808,7 +811,7 @@ draw_text (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *
flags = g_value_get_uint (&v);
if(!mfv->priv->light)
unread = g_value_get_boolean (&v1);
- g_object_set ((GObject *)c,"strikethrough", (strike && (flags &CAMEL_MESSAGE_DELETED)),
+ g_object_set ((GObject *)c,"strikethrough", (!emts->trash && strike && (flags &CAMEL_MESSAGE_DELETED)),
"ellipsize", ellipsize ? PANGO_ELLIPSIZE_END : PANGO_ELLIPSIZE_NONE, NULL);
if (bold) {
if ( mfv->priv->light)
@@ -886,7 +889,7 @@ draw_text (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *
else
g_object_set ((GObject *)c, "weight", (unread ? PANGO_WEIGHT_BOLD : PANGO_WEIGHT_NORMAL), NULL);
}
- g_object_set ((GObject *)c,"strikethrough", (strike && (flags &CAMEL_MESSAGE_DELETED)),
+ g_object_set ((GObject *)c,"strikethrough", (!emts->trash && strike && (flags &CAMEL_MESSAGE_DELETED)),
"ellipsize", ellipsize ? PANGO_ELLIPSIZE_END : PANGO_ELLIPSIZE_NONE, NULL);
g_value_unset (&value1);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]