diff options
author | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2006-11-16 06:53:57 +0000 |
---|---|---|
committer | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2006-11-16 06:53:57 +0000 |
commit | e833ae01a04a1f4815b799398ed599453bbdff7b (patch) | |
tree | e0cff62dc1f2a75e11418bf9e0b2ec95b51dedfd /src/summaryview.c | |
parent | 5172cd5e5da898528072393c07aed1375192c2d4 (diff) |
periodically update UI on manual filtering to avoid freeze.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@1317 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src/summaryview.c')
-rw-r--r-- | src/summaryview.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/summaryview.c b/src/summaryview.c index c4f382cf..2ec78bb9 100644 --- a/src/summaryview.c +++ b/src/summaryview.c @@ -4386,6 +4386,9 @@ static gboolean summary_filter_func(GtkTreeModel *model, GtkTreePath *path, summaryview->flt_count, summaryview->flt_total); STATUSBAR_POP(summaryview->mainwin); STATUSBAR_PUSH(summaryview->mainwin, msg); + if ((summaryview->flt_count % 500) == 0) { + GTK_EVENTS_FLUSH(); + } } fltinfo = filter_info_new(); @@ -4444,6 +4447,9 @@ static gboolean summary_filter_junk_func(GtkTreeModel *model, GtkTreePath *path, summaryview->flt_count, summaryview->flt_total); STATUSBAR_POP(summaryview->mainwin); STATUSBAR_PUSH(summaryview->mainwin, msg); + if ((summaryview->flt_count % 500) == 0) { + GTK_EVENTS_FLUSH(); + } } fltinfo = filter_info_new(); @@ -4494,6 +4500,7 @@ static void summary_filter_real(SummaryView *summaryview, debug_print(_("filtering...")); STATUSBAR_PUSH(summaryview->mainwin, _("Filtering...")); main_window_cursor_wait(summaryview->mainwin); + GTK_EVENTS_FLUSH(); summaryview->filtered = 0; summaryview->flt_count = 0; |