aboutsummaryrefslogtreecommitdiff
path: root/src/summaryview.c
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2006-01-17 09:08:28 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2006-01-17 09:08:28 +0000
commit82f2b2c8d01340ed478e05313e52f1324faaf272 (patch)
tree447185c98d300f2f1831da07927a2031d0c76b62 /src/summaryview.c
parent186fb3f95f60797959a3b35bebbca5dfb08d855c (diff)
enabled toggle of the searchbar.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@901 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src/summaryview.c')
-rw-r--r--src/summaryview.c18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/summaryview.c b/src/summaryview.c
index 58b2d592..ebb0cfc8 100644
--- a/src/summaryview.c
+++ b/src/summaryview.c
@@ -4690,6 +4690,15 @@ void summary_get_column_order(SummaryView *summaryview)
void summary_qsearch_reset(SummaryView *summaryview)
{
+ if (!summaryview->on_filter)
+ return;
+
+ gtk_entry_set_text(GTK_ENTRY(summaryview->search_entry), "");
+
+ summaryview->on_filter = FALSE;
+ g_slist_free(summaryview->flt_mlist);
+ summaryview->flt_mlist = NULL;
+
summary_lock(summaryview);
main_window_cursor_wait(summaryview->mainwin);
@@ -4713,9 +4722,8 @@ void summary_qsearch(SummaryView *summaryview)
GSList *flt_mlist = NULL;
GSList *cur;
- summaryview->on_filter = FALSE;
- g_slist_free(summaryview->flt_mlist);
- summaryview->flt_mlist = NULL;
+ if (!summaryview->all_mlist)
+ return;
key = gtk_entry_get_text(GTK_ENTRY(summaryview->search_entry));
if (!key || *key == '\0') {
@@ -4723,6 +4731,10 @@ void summary_qsearch(SummaryView *summaryview)
return;
}
+ summaryview->on_filter = FALSE;
+ g_slist_free(summaryview->flt_mlist);
+ summaryview->flt_mlist = NULL;
+
cond = filter_cond_new(FLT_COND_HEADER, FLT_CONTAIN, 0, "Subject", key);
cond_list = g_slist_append(cond_list, cond);
cond = filter_cond_new(FLT_COND_HEADER, FLT_CONTAIN, 0, "From", key);