From: Sergio Villar Senin Date: Thu, 21 Aug 2008 11:36:05 +0000 (+0000) Subject: * Fixes a big memory leak caused by a renderer that was never drawn nor freed X-Git-Tag: git_migration_finished~1217 X-Git-Url: http://vcs.maemo.org/git/?a=commitdiff_plain;h=c870f4dab06bcfbafd3be3b57ad510ce925fc080;p=modest * Fixes a big memory leak caused by a renderer that was never drawn nor freed pmo-trunk-r5339 --- diff --git a/src/modest-init.c b/src/modest-init.c index 7839b57..1c99eb6 100644 --- a/src/modest-init.c +++ b/src/modest-init.c @@ -83,7 +83,6 @@ static const guint MODEST_MAIN_PANED_POS_PERCENTAGE = 30; static const guint MODEST_MSG_PANED_POS_PERCENTAGE = 50; static const FolderCols INBOX_COLUMNS_DETAILS[] = { - {MODEST_HEADER_VIEW_COLUMN_MSGTYPE, 40, 0}, {MODEST_HEADER_VIEW_COLUMN_ATTACH, 40, 0}, {MODEST_HEADER_VIEW_COLUMN_FROM, 80, 0}, {MODEST_HEADER_VIEW_COLUMN_SUBJECT, 80, 0}, @@ -96,7 +95,6 @@ static const FolderCols INBOX_COLUMNS_TWOLINES[] = { }; static const FolderCols OUTBOX_COLUMNS_DETAILS[] = { - {MODEST_HEADER_VIEW_COLUMN_MSGTYPE, 40, 0}, {MODEST_HEADER_VIEW_COLUMN_ATTACH, 40, 0}, {MODEST_HEADER_VIEW_COLUMN_TO, 80, 0}, {MODEST_HEADER_VIEW_COLUMN_SUBJECT, 80, 0}, diff --git a/src/widgets/modest-header-view-render.c b/src/widgets/modest-header-view-render.c index a1a8299..9b03093 100644 --- a/src/widgets/modest-header-view-render.c +++ b/src/widgets/modest-header-view-render.c @@ -154,27 +154,6 @@ set_cell_text (GtkCellRenderer *renderer, g_object_thaw_notify (G_OBJECT (renderer)); } - -void -_modest_header_view_msgtype_cell_data (GtkTreeViewColumn *column, GtkCellRenderer *renderer, - GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer user_data) -{ - TnyHeaderFlags flags; - - gtk_tree_model_get (tree_model, iter, TNY_GTK_HEADER_LIST_MODEL_FLAGS_COLUMN, - &flags, -1); - - if (flags & TNY_HEADER_FLAG_DELETED) - g_object_set (G_OBJECT (renderer), "pixbuf", - get_pixbuf_for_flag (TNY_HEADER_FLAG_DELETED), NULL); - else if (flags & TNY_HEADER_FLAG_SEEN) - g_object_set (G_OBJECT (renderer), "pixbuf", - get_pixbuf_for_flag (TNY_HEADER_FLAG_SEEN), NULL); - else - g_object_set (G_OBJECT (renderer), "pixbuf", - get_pixbuf_for_flag (0), NULL); /* ughh, FIXME */ -} - void _modest_header_view_attach_cell_data (GtkTreeViewColumn *column, GtkCellRenderer *renderer, GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer user_data) diff --git a/src/widgets/modest-header-view.c b/src/widgets/modest-header-view.c index 239d3dd..934fc37 100644 --- a/src/widgets/modest-header-view.c +++ b/src/widgets/modest-header-view.c @@ -337,7 +337,7 @@ modest_header_view_set_columns (ModestHeaderView *self, const GList *columns, Tn GtkTreeModel *tree_filter, *sortable; GtkTreeViewColumn *column=NULL; GtkTreeSelection *selection = NULL; - GtkCellRenderer *renderer_msgtype,*renderer_header, + GtkCellRenderer *renderer_header, *renderer_attach, *renderer_compact_date_or_status; GtkCellRenderer *renderer_compact_header, *renderer_recpt_box, *renderer_subject, *renderer_subject_box, *renderer_recpt, @@ -352,7 +352,6 @@ modest_header_view_set_columns (ModestHeaderView *self, const GList *columns, Tn priv = MODEST_HEADER_VIEW_GET_PRIVATE(self); /* FIXME: check whether these renderers need to be freed */ - renderer_msgtype = gtk_cell_renderer_pixbuf_new (); renderer_attach = gtk_cell_renderer_pixbuf_new (); renderer_priority = gtk_cell_renderer_pixbuf_new (); renderer_header = gtk_cell_renderer_text_new (); @@ -434,15 +433,6 @@ modest_header_view_set_columns (ModestHeaderView *self, const GList *columns, Tn switch (col) { - case MODEST_HEADER_VIEW_COLUMN_MSGTYPE: - column = get_new_column (_("M"), renderer_msgtype, FALSE, - TNY_GTK_HEADER_LIST_MODEL_FLAGS_COLUMN, - FALSE, - (GtkTreeCellDataFunc)_modest_header_view_msgtype_cell_data, - NULL); - gtk_tree_view_column_set_fixed_width (column, 45); - break; - case MODEST_HEADER_VIEW_COLUMN_ATTACH: column = get_new_column (_("A"), renderer_attach, FALSE, TNY_GTK_HEADER_LIST_MODEL_FLAGS_COLUMN, diff --git a/src/widgets/modest-header-view.h b/src/widgets/modest-header-view.h index c59d4db..e1d671b 100644 --- a/src/widgets/modest-header-view.h +++ b/src/widgets/modest-header-view.h @@ -61,25 +61,24 @@ struct _ModestHeaderView { #define MODEST_HEADER_VIEW_FLAG_SORT "header-view-flags-sort" typedef enum _ModestHeaderViewColumn { - MODEST_HEADER_VIEW_COLUMN_FROM = 0, - MODEST_HEADER_VIEW_COLUMN_TO = 1, - MODEST_HEADER_VIEW_COLUMN_SUBJECT = 2, - MODEST_HEADER_VIEW_COLUMN_SENT_DATE = 3, - MODEST_HEADER_VIEW_COLUMN_RECEIVED_DATE = 4, - MODEST_HEADER_VIEW_COLUMN_MSGTYPE = 5, - MODEST_HEADER_VIEW_COLUMN_ATTACH = 6, - MODEST_HEADER_VIEW_COLUMN_SIZE = 7, - MODEST_HEADER_VIEW_COLUMN_STATUS = 8, + MODEST_HEADER_VIEW_COLUMN_FROM, + MODEST_HEADER_VIEW_COLUMN_TO, + MODEST_HEADER_VIEW_COLUMN_SUBJECT, + MODEST_HEADER_VIEW_COLUMN_SENT_DATE, + MODEST_HEADER_VIEW_COLUMN_RECEIVED_DATE, + MODEST_HEADER_VIEW_COLUMN_ATTACH, + MODEST_HEADER_VIEW_COLUMN_SIZE, + MODEST_HEADER_VIEW_COLUMN_STATUS, /* * these two are for compact display on small devices, * with two line display with all relevant headers */ - MODEST_HEADER_VIEW_COLUMN_COMPACT_FLAG = 9, /* priority and attachments */ - MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_IN = 10, /* incoming mail */ - MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_OUT = 11,/* outgoing mail */ - MODEST_HEADER_VIEW_COLUMN_COMPACT_SENT_DATE = 12, - MODEST_HEADER_VIEW_COLUMN_COMPACT_RECEIVED_DATE = 13, + MODEST_HEADER_VIEW_COLUMN_COMPACT_FLAG, /* priority and attachments */ + MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_IN, /* incoming mail */ + MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_OUT,/* outgoing mail */ + MODEST_HEADER_VIEW_COLUMN_COMPACT_SENT_DATE, + MODEST_HEADER_VIEW_COLUMN_COMPACT_RECEIVED_DATE, MODEST_HEADER_VIEW_COLUMN_NUM