Make sure that the message subject is non-NULL beforetrying to base a

2001-12-04  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-autofilter.c (rule_from_message): Make sure that the
	message subject is non-NULL beforetrying to base a vfolder rule
	off it. Fixes bug #16284.

2001-12-07  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-accounts.c (construct): Connect to the dialog's "destroy"
	event and close any druids/editors that may be open when that
	signal is caught. Fixes bug #16501.

	* mail-vfolder.c (vfolder_edit): Set the window title to "Virtual
	Folders". Fixes bug #16695.

svn path=/trunk/; revision=14966
This commit is contained in:
Jeffrey Stedfast
2001-12-10 20:09:37 +00:00
committed by Jeffrey Stedfast
parent 4996c32075
commit 63ce54907c
4 changed files with 40 additions and 29 deletions

View File

@ -1,33 +1,23 @@
2001-12-04 Jeffrey Stedfast <fejj@ximian.com>
* mail-autofilter.c (rule_from_message): Make sure that the
message subject is non-NULL beforetrying to base a vfolder rule
off it. Fixes bug #16284.
2001-12-07 Jeffrey Stedfast <fejj@ximian.com>
* mail-accounts.c (construct): Connect to the dialog's "destroy"
event and close any druids/editors that may be open when that
signal is caught. Fixes bug #16501.
* mail-vfolder.c (vfolder_edit): Set the window title to "Virtual
Folders". Fixes bug #16695.
2001-12-05 Radek Doulik <rodo@ximian.com>
* mail-callbacks.c (do_mail_print): set paper size to
_("US-Letter"), use gtk_html_print_set_master
2001-12-09 Jon Trowbridge <trow@ximian.com>
* message-list.c: #include "art/mail-need-reply.xpm".
(ml_tree_value_at): Adjust magic numbers, show "Need Reply" icon
if the message needs reply.
(message_list_create_extras): Adjust magic numbers to add new
icon.
(on_click): Changed to toggle between unread, read, and need reply
when the status icon is clicked.
* mail-callbacks.c (mark_as_needing_reply): Added.
(mark_as_not_needing_reply): Added. Add "set" value to struct
post_send_data.
(composer_sent_cb): Use both "flags" and "set" elements of
post_send_data when setting message flags.
(mail_reply): Clear "Needs Reply" flag when we actually reply to a
message.
* folder-browser.c: Changed flag values to be given by
bit-shifting (1<<5) vs. base-ten (32). Added
CAN_MARK_DOESNT_NEED_REPLY flag. Added "Mark as Needing Reply"
and "Mark as Not Needing Reply" elements to context menu.
(on_right_click): Hide "Mark as (Not) Needing Reply" context menu
elements as appropriate.
2001-12-08 Dan Winship <danw@ximian.com>
* mail-display.c (on_object_requested): Don't just assume all of

View File

@ -763,6 +763,21 @@ charset_menu_deactivate (GtkWidget *menu, gpointer data)
}
}
static void
dialog_destroy (GtkWidget *dialog, gpointer user_data)
{
if (druid)
gtk_widget_destroy (GTK_WIDGET (druid));
if (editor)
gtk_widget_destroy (GTK_WIDGET (editor));
#ifdef ENABLE_NNTP
if (news_editor)
gtk_widget_destroy (GTK_WIDGET (news_editor));
#endif
}
static void
construct (MailAccountsDialog *dialog)
{
@ -783,7 +798,10 @@ construct (MailAccountsDialog *dialog)
gtk_window_set_title (GTK_WINDOW (dialog), _("Mail Settings"));
gtk_window_set_policy (GTK_WINDOW (dialog), FALSE, TRUE, TRUE);
gtk_window_set_default_size (GTK_WINDOW (dialog), 400, 300);
gnome_dialog_append_button (GNOME_DIALOG (dialog), GNOME_STOCK_BUTTON_CLOSE);
gnome_dialog_append_button (GNOME_DIALOG (dialog), GNOME_STOCK_BUTTON_OK);
gtk_signal_connect (GTK_OBJECT (dialog), "destroy",
GTK_SIGNAL_FUNC (dialog_destroy), dialog);
dialog->mail_accounts = GTK_CLIST (glade_xml_get_widget (gui, "clistAccounts"));
gtk_signal_connect (GTK_OBJECT (dialog->mail_accounts), "select-row",

View File

@ -101,6 +101,7 @@ strip_re (const char *subject)
} else
break;
}
return (char *) s;
}
@ -127,7 +128,7 @@ rule_add_subject (RuleContext *context, FilterRule *rule, const char *text)
{
FilterPart *part;
FilterElement *element;
/* dont match on empty strings ever */
if (*text == 0)
return;
@ -208,11 +209,12 @@ rule_from_message (FilterRule *rule, RuleContext *context, CamelMimeMessage *msg
rule->grouping = FILTER_GROUP_ANY;
if (flags & AUTO_SUBJECT) {
const char *subject = msg->subject ? msg->subject : "";
char *namestr;
rule_match_subject (context, rule, msg->subject);
rule_match_subject (context, rule, subject);
namestr = g_strdup_printf (U_("Subject is %s"), strip_re (msg->subject));
namestr = g_strdup_printf (U_("Subject is %s"), strip_re (subject));
filter_rule_set_name (rule, namestr);
g_free (namestr);
}

View File

@ -782,6 +782,7 @@ vfolder_edit (void)
}
vfolder_editor = GTK_WIDGET (vfolder_editor_new (context));
gtk_window_set_title (GTK_WINDOW (vfolder_editor), _("vFolders"));
gtk_signal_connect (GTK_OBJECT (vfolder_editor), "clicked", vfolder_editor_clicked, NULL);
gtk_signal_connect (GTK_OBJECT (vfolder_editor), "destroy", vfolder_editor_destroy, NULL);
gtk_widget_show (vfolder_editor);