* Added an improvement for d&d, now it's not required to use the SHIFT key to do...
[modest] / src / widgets / modest-header-view-render.c
index 3a0b66c..0dd04c9 100644 (file)
@@ -60,8 +60,8 @@ get_status_of_uid (TnyHeader *header)
        TnyTransportAccount *account = NULL;
        GSList *send_queues = NULL, *node;
        /* get_msg_status returns suspended by default, so we want to detect changes */
-       ModestTnySendQueueStatus status = MODEST_TNY_SEND_QUEUE_SUSPENDED;
-       ModestTnySendQueueStatus queue_status = MODEST_TNY_SEND_QUEUE_SUSPENDED;
+       ModestTnySendQueueStatus status = MODEST_TNY_SEND_QUEUE_UNKNONW;
+       ModestTnySendQueueStatus queue_status = MODEST_TNY_SEND_QUEUE_UNKNONW;
        gchar *msg_uid = NULL;
        ModestTnySendQueue *send_queue = NULL;
        
@@ -248,7 +248,7 @@ _modest_header_view_date_cell_data  (GtkTreeViewColumn *column,  GtkCellRenderer
                            TNY_GTK_HEADER_LIST_MODEL_FLAGS_COLUMN, &flags,
                            date_col, &date,
                            -1);
-
+       
        display_date = modest_text_utils_get_display_date (date);
        g_object_set (G_OBJECT(renderer), "text", display_date, NULL);  
 
@@ -335,9 +335,9 @@ _modest_header_view_compact_header_cell_data  (GtkTreeViewColumn *column,  GtkCe
                                    TNY_GTK_HEADER_LIST_MODEL_SUBJECT_COLUMN, &subject,
                                    TNY_GTK_HEADER_LIST_MODEL_DATE_SENT_TIME_T_COLUMN, &date,
                                    TNY_GTK_HEADER_LIST_MODEL_INSTANCE_COLUMN, &msg_header,
-                                   -1);
-
+                                   -1);        
        /* flags */
+       /* FIXME: we might gain something by doing all the g_object_set's at once */
        prior_flags = flags & TNY_HEADER_FLAG_PRIORITY;
        if (flags & TNY_HEADER_FLAG_ATTACHMENTS)
                g_object_set (G_OBJECT (attach_cell), "pixbuf",
@@ -354,20 +354,26 @@ _modest_header_view_compact_header_cell_data  (GtkTreeViewColumn *column,  GtkCe
        else
                g_object_set (G_OBJECT (priority_cell), "pixbuf",
                              NULL, NULL);
-                             
-       header = g_markup_printf_escaped ("%s", (subject && strlen (subject)) ? subject : _("mail_va_no_subject"));
+
+
+       if (subject && strlen (subject)) {
+               gchar * escaped_subject = NULL;
+
+               escaped_subject = g_markup_escape_text (subject, -1);
+               g_object_set (G_OBJECT (subject_cell), "markup",
+                             escaped_subject, NULL);
+       } else {
+               g_object_set (G_OBJECT (subject_cell), "markup",
+                             _("mail_va_no_subject"), NULL);
+       }
+
        g_free (subject);
-       subject = NULL;
-       g_object_set (G_OBJECT (subject_cell), "markup", header, NULL);
-       g_free (header);
-       header = NULL;
        set_common_flags (subject_cell, flags);
 
-
-       /* fixme: we hardcode the color to #666666; instead we should use SecondaryTextColour from the
+       /* FIXME: we hardcode the color to #666666; instead we should use SecondaryTextColour from the
         * theme (gtkrc file) */
-       
-       header = g_markup_printf_escaped ("<span size='small' foreground='#666666'>%s</span>", modest_text_utils_get_display_address (address));
+       header = g_markup_printf_escaped ("<span size='small' foreground='#666666'>%s</span>",
+                                         modest_text_utils_get_display_address (address));
        g_free (address);
        address = NULL;
        g_object_set (G_OBJECT (recipient_cell),
@@ -378,7 +384,7 @@ _modest_header_view_compact_header_cell_data  (GtkTreeViewColumn *column,  GtkCe
        set_common_flags (recipient_cell, flags);
 
        if (header_mode == MODEST_HEADER_VIEW_COMPACT_HEADER_MODE_OUTBOX) {
-               ModestTnySendQueueStatus status = MODEST_TNY_SEND_QUEUE_WAITING;
+               ModestTnySendQueueStatus status = MODEST_TNY_SEND_QUEUE_UNKNONW;
                const gchar *status_str = "";
                if (msg_header != NULL) {
                        status = get_status_of_uid (msg_header);
@@ -386,8 +392,6 @@ _modest_header_view_compact_header_cell_data  (GtkTreeViewColumn *column,  GtkCe
                                tny_header_unset_flags (msg_header, TNY_HEADER_FLAG_PRIORITY);
                                tny_header_set_flags (msg_header, TNY_HEADER_FLAG_SUSPENDED_PRIORITY);
                        }
-/*                     if (prior_flags == TNY_HEADER_FLAG_SUSPENDED_PRIORITY) */
-/*                             status = MODEST_TNY_SEND_QUEUE_SUSPENDED; */
                }
                
                status_str = get_status_string (status);