X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fhildon2%2Fmodest-msg-edit-window.c;h=4f77d839e0f4f5a6880077883eeef6c2c9c48e2c;hp=544bfcb056e51f2a2d08c151884c3d786a8749b6;hb=2f389f63c41b57e95390a1d5df41edfc3ae91045;hpb=9b5936d0667d3810182f8a6105b4d09f68509da5 diff --git a/src/hildon2/modest-msg-edit-window.c b/src/hildon2/modest-msg-edit-window.c index 544bfcb..4f77d83 100644 --- a/src/hildon2/modest-msg-edit-window.c +++ b/src/hildon2/modest-msg-edit-window.c @@ -241,6 +241,9 @@ struct _ModestMsgEditWindowPrivate { GtkWidget *from_field; gchar *last_from_account; gchar *original_account_name; + + gchar *references; + gchar *in_reply_to; GtkWidget *to_field; GtkWidget *cc_field; @@ -425,6 +428,9 @@ modest_msg_edit_window_init (ModestMsgEditWindow *obj) priv->font_dialog = NULL; priv->app_menu = NULL; + priv->references = NULL; + priv->in_reply_to = NULL; + if (!is_wp_text_buffer_started) { is_wp_text_buffer_started = TRUE; wp_text_buffer_library_init (); @@ -882,8 +888,6 @@ init_window (ModestMsgEditWindow *obj) gtk_container_add (GTK_CONTAINER (window_align), main_vbox); hildon_pannable_area_add_with_viewport (HILDON_PANNABLE_AREA (priv->pannable), window_align); - gtk_container_set_focus_vadjustment (GTK_CONTAINER (main_vbox), - hildon_pannable_area_get_vadjustment (HILDON_PANNABLE_AREA (priv->pannable))); gtk_widget_show_all (GTK_WIDGET(priv->pannable)); window_box = gtk_vbox_new (FALSE, 0); @@ -974,6 +978,8 @@ modest_msg_edit_window_finalize (GObject *obj) g_free (priv->original_account_name); g_free (priv->msg_uid); g_free (priv->last_search); + g_free (priv->references); + g_free (priv->in_reply_to); g_object_unref (priv->faces_model); g_object_unref (priv->sizes_model); g_object_unref (priv->attachments); @@ -1212,6 +1218,8 @@ set_msg (ModestMsgEditWindow *self, TnyMsg *msg, gboolean preserve_is_rich) cc = tny_header_dup_cc (header); bcc = tny_header_dup_bcc (header); subject = tny_header_dup_subject (header); + + modest_tny_msg_get_references (TNY_MSG (msg), NULL, &(priv->references), &(priv->in_reply_to)); priority_flags = tny_header_get_priority (header); if (to) @@ -1628,6 +1636,8 @@ modest_msg_edit_window_get_msg_data (ModestMsgEditWindow *edit_window) data->cc = g_strdup (modest_recpt_editor_get_recipients (MODEST_RECPT_EDITOR (priv->cc_field))); data->bcc = g_strdup (modest_recpt_editor_get_recipients (MODEST_RECPT_EDITOR (priv->bcc_field))); data->subject = g_strdup (gtk_entry_get_text (GTK_ENTRY (priv->subject_field))); + data->references = g_strdup (priv->references); + data->in_reply_to = g_strdup (priv->in_reply_to); if (priv->draft_msg) { data->draft_msg = g_object_ref (priv->draft_msg); } else if (priv->outbox_msg) { @@ -1727,6 +1737,8 @@ modest_msg_edit_window_free_msg_data (ModestMsgEditWindow *edit_window, g_free (data->plain_body); g_free (data->html_body); g_free (data->account_name); + g_free (data->references); + g_free (data->in_reply_to); if (data->draft_msg != NULL) { g_object_unref (data->draft_msg); @@ -3462,8 +3474,10 @@ gtk_text_iter_forward_search_insensitive (const GtkTextIter *iter, if (!g_utf8_collate (range_subtext, str_casefold)) { gchar *found_text = g_strndup (range_text + offset, str_chars_n); result = TRUE; - gtk_text_iter_forward_search (iter, found_text, GTK_TEXT_SEARCH_VISIBLE_ONLY|GTK_TEXT_SEARCH_TEXT_ONLY, - match_start, match_end, NULL); + if (!gtk_text_iter_forward_search (iter, found_text, GTK_TEXT_SEARCH_VISIBLE_ONLY|GTK_TEXT_SEARCH_TEXT_ONLY, + match_start, match_end, NULL)) { + g_warning ("Matched string with collate, but not matched in model"); + } g_free (found_text); } g_free (range_subtext); @@ -3577,7 +3591,6 @@ modest_msg_edit_window_set_draft (ModestMsgEditWindow *window, g_return_if_fail ((draft == NULL)||(TNY_IS_MSG (draft))); priv = MODEST_MSG_EDIT_WINDOW_GET_PRIVATE (window); - ModestWindowMgr *mgr = modest_runtime_get_window_mgr (); if (priv->draft_msg != NULL) { g_object_unref (priv->draft_msg); @@ -3591,12 +3604,6 @@ modest_msg_edit_window_set_draft (ModestMsgEditWindow *window, priv->msg_uid = NULL; } priv->msg_uid = modest_tny_folder_get_header_unique_id (header); - if (GTK_WIDGET_REALIZED (window)) { - if (!modest_window_mgr_register_window (mgr, MODEST_WINDOW (window), NULL)) { - gtk_widget_destroy (GTK_WIDGET (window)); - return; - } - } } priv->draft_msg = draft;