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 | |
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
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | ChangeLog.ja | 4 | ||||
-rw-r--r-- | src/summaryview.c | 7 |
3 files changed, 15 insertions, 0 deletions
@@ -1,3 +1,7 @@ +2006-11-16 + + * src/summaryview.c: periodically update UI on manual filtering. + 2006-11-15 * src/jpilot.c: applied the patch for libpisock12 support (fixes diff --git a/ChangeLog.ja b/ChangeLog.ja index 5ec214cf..d07413a8 100644 --- a/ChangeLog.ja +++ b/ChangeLog.ja @@ -1,3 +1,7 @@ +2006-11-16 + + * src/summaryview.c: 手動振り分け時に定期的に UI を更新するようにした。 + 2006-11-15 * src/jpilot.c: libpisock12 対応パッチを適用(AddressDB.pdb インポートに 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; |