aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog11
-rw-r--r--mail/em-folder-browser.c1
-rw-r--r--mail/em-folder-view.c10
3 files changed, 17 insertions, 5 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 1628c654a4..5b7ea28b5e 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,14 @@
+2005-08-03 Not Zed <NotZed@Ximian.com>
+
+ * em-folder-browser.c (emfb_set_folder): not here.
+
+ * em-folder-view.c (emfv_set_folder): ref the folder here.
+
+2005-08-03 Not Zed <NotZed@Ximian.com>
+
+ * em-folder-view.c (emfv_message_reply): try to fix #309647, only
+ act if the selection is actually active.
+
2005-07-29 Arunprakash <arunp@novell.com>
* mail/em-folder-utils.c (em_folder_utils_delete_folder) : Allocated
diff --git a/mail/em-folder-browser.c b/mail/em-folder-browser.c
index 286c767e1a..842e5c59ea 100644
--- a/mail/em-folder-browser.c
+++ b/mail/em-folder-browser.c
@@ -1020,7 +1020,6 @@ emfb_set_folder(EMFolderView *emfv, CamelFolder *folder, const char *uri)
int state;
GConfClient *gconf = mail_config_get_gconf_client();
- camel_object_ref(folder);
mail_refresh_folder(folder, NULL, NULL);
emfb->priv->folder_changed_id = camel_object_hook_event(folder, "folder_changed",
diff --git a/mail/em-folder-view.c b/mail/em-folder-view.c
index 8eb51b198f..aca5858afb 100644
--- a/mail/em-folder-view.c
+++ b/mail/em-folder-view.c
@@ -603,6 +603,7 @@ emfv_set_folder(EMFolderView *emfv, CamelFolder *folder, const char *uri)
/* We need to set this up to get the right view options for the message-list,
* even if we're not showing it */
emfv_setup_view_instance(emfv);
+ camel_object_ref(folder);
}
emfv_enable_menus(emfv);
@@ -1388,7 +1389,7 @@ emfv_message_post_reply (BonoboUIComponent *uic, void *data, const char *path)
static void
emfv_message_reply(EMFolderView *emfv, int mode)
{
- char *selection_string;
+ char *html;
guint len;
if (emfv->list->cursor_uid == NULL)
@@ -1397,8 +1398,9 @@ emfv_message_reply(EMFolderView *emfv, int mode)
if (!em_utils_check_user_can_send_mail ((GtkWidget *) emfv))
return;
- selection_string = gtk_html_get_selection_html (((EMFormatHTML *)emfv->preview)->html, &len);
- if (selection_string && len) {
+ if (gtk_html_command(((EMFormatHTML *)emfv->preview)->html, "is-selection-active")
+ && (html = gtk_html_get_selection_html (((EMFormatHTML *)emfv->preview)->html, &len))
+ && len) {
CamelMimeMessage *msg, *src;
struct _camel_header_raw *header;
@@ -1414,7 +1416,7 @@ emfv_message_reply(EMFolderView *emfv, int mode)
}
camel_mime_part_set_encoding((CamelMimePart *)msg, CAMEL_TRANSFER_ENCODING_8BIT);
camel_mime_part_set_content((CamelMimePart *)msg,
- selection_string, len, "text/html");
+ html, len, "text/html");
em_utils_reply_to_message (emfv->folder, emfv->list->cursor_uid, msg, mode, NULL);
camel_object_unref(msg);
} else {