diff options
-rw-r--r-- | mail/ChangeLog | 13 | ||||
-rw-r--r-- | mail/e-searching-tokenizer.c | 11 | ||||
-rw-r--r-- | mail/e-searching-tokenizer.h | 2 | ||||
-rw-r--r-- | mail/em-format-html-display.c | 2 | ||||
-rw-r--r-- | mail/em-format-html.c | 2 |
5 files changed, 27 insertions, 3 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 4c265774ff..7641b3e25b 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,16 @@ +2004-03-05 Jeffrey Stedfast <fejj@ximian.com> + + * em-format-html-display.c (em_format_html_display_search): Don't + set our parent window as the efhd, ehfd isn't even a widget. + + Fixes bug #54030 + + * em-format-html-display.c (efhd_search_response): Reset the + searching tokeniser on Cancel. + + * e-searching-tokenizer.c (e_searching_tokenizer_reset): New + function to reset a search tokeniser. + 2004-03-05 Not Zed <NotZed@Ximian.com> ** See bug #55096. diff --git a/mail/e-searching-tokenizer.c b/mail/e-searching-tokenizer.c index 44e88df378..020d4d2fe4 100644 --- a/mail/e-searching-tokenizer.c +++ b/mail/e-searching-tokenizer.c @@ -1242,10 +1242,19 @@ e_searching_tokenizer_set_secondary_case_sensitivity (ESearchingTokenizer *st, g gint e_searching_tokenizer_match_count (ESearchingTokenizer *st) { - g_return_val_if_fail (st && E_IS_SEARCHING_TOKENIZER (st), -1); + g_return_val_if_fail (E_IS_SEARCHING_TOKENIZER (st), -1); if (st->priv->engine) return st->priv->engine->matchcount; return 0; } + +void +e_searching_tokenizer_reset (ESearchingTokenizer *st) +{ + if (st->priv->engine) { + searcher_free (st->priv->engine); + st->priv->engine = NULL; + } +} diff --git a/mail/e-searching-tokenizer.h b/mail/e-searching-tokenizer.h index 9cdd3cb3c2..d0546a0557 100644 --- a/mail/e-searching-tokenizer.h +++ b/mail/e-searching-tokenizer.h @@ -70,5 +70,7 @@ void e_searching_tokenizer_set_secondary_case_sensitivity (ESearchingTokenizer * int e_searching_tokenizer_match_count (ESearchingTokenizer *); +void e_searching_tokenizer_reset (ESearchingTokenizer *); + #endif /* __E_SEARCHING_TOKENIZER_H__ */ diff --git a/mail/em-format-html-display.c b/mail/em-format-html-display.c index fc26251a83..b7b432e72c 100644 --- a/mail/em-format-html-display.c +++ b/mail/em-format-html-display.c @@ -457,6 +457,7 @@ efhd_search_response(GtkWidget *w, int button, EMFormatHTMLDisplay *efhd) g_free(p->search_text); p->search_text = NULL; gtk_widget_destroy((GtkWidget *)p->search_dialog); + e_searching_tokenizer_reset (efhd->search_tok); p->search_dialog = NULL; } } @@ -516,7 +517,6 @@ em_format_html_display_search(EMFormatHTMLDisplay *efhd) g_signal_connect(p->search_entry, "activate", G_CALLBACK(efhd_search_entry_activate), efhd); g_signal_connect(p->search_case_check, "toggled", G_CALLBACK(efhd_search_case_toggled), efhd); g_signal_connect(p->search_dialog, "response", G_CALLBACK(efhd_search_response), efhd); - e_dialog_set_transient_for((GtkWindow *)p->search_dialog, (GtkWidget *)efhd); gtk_widget_show((GtkWidget *)p->search_dialog); } diff --git a/mail/em-format-html.c b/mail/em-format-html.c index 75ed9ff0ff..19e43c366c 100644 --- a/mail/em-format-html.c +++ b/mail/em-format-html.c @@ -1392,7 +1392,7 @@ efh_format_address (GString *out, struct _camel_header_address *a) case CAMEL_HEADER_ADDRESS_NAME: if (name && *name) { char *real, *mailaddr; - + g_string_append_printf (out, "%s <", name); /* rfc2368 for mailto syntax and url encoding extras */ real = camel_header_encode_phrase(a->name); |