diff options
author | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2006-01-19 07:09:11 +0000 |
---|---|---|
committer | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2006-01-19 07:09:11 +0000 |
commit | 784fa78588cc6e01b92bb0fe8dd8177115c1810c (patch) | |
tree | 72d6037781cb9402c731cd7876362fa539a75974 /src/summaryview.c | |
parent | 10a1648777df295073c626b1b11b096d72d9bf1c (diff) |
a bit of optimization for toggling threads.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@907 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src/summaryview.c')
-rw-r--r-- | src/summaryview.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/summaryview.c b/src/summaryview.c index 6177c86e..18184456 100644 --- a/src/summaryview.c +++ b/src/summaryview.c @@ -3622,6 +3622,10 @@ void summary_thread_build(SummaryView *summaryview) STATUSBAR_PUSH(summaryview->mainwin, _("Building threads...")); main_window_cursor_wait(summaryview->mainwin); + g_signal_handlers_block_matched(G_OBJECT(summaryview->treeview), + (GSignalMatchType)G_SIGNAL_MATCH_DATA, + 0, 0, NULL, NULL, summaryview); + selected_msg = summary_get_msginfo(summaryview, summaryview->selected); displayed_msg = summary_get_msginfo (summaryview, summaryview->displayed); @@ -3703,6 +3707,10 @@ void summary_thread_build(SummaryView *summaryview) } } + g_signal_handlers_unblock_matched(G_OBJECT(summaryview->treeview), + (GSignalMatchType)G_SIGNAL_MATCH_DATA, + 0, 0, NULL, NULL, summaryview); + debug_print(_("done.\n")); STATUSBAR_POP(summaryview->mainwin); main_window_cursor_normal(summaryview->mainwin); @@ -3765,6 +3773,10 @@ void summary_unthread(SummaryView *summaryview) STATUSBAR_PUSH(summaryview->mainwin, _("Unthreading...")); main_window_cursor_wait(summaryview->mainwin); + g_signal_handlers_block_matched(G_OBJECT(summaryview->treeview), + (GSignalMatchType)G_SIGNAL_MATCH_DATA, + 0, 0, NULL, NULL, summaryview); + selected_msg = summary_get_msginfo(summaryview, summaryview->selected); displayed_msg = summary_get_msginfo (summaryview, summaryview->displayed); @@ -3824,6 +3836,10 @@ void summary_unthread(SummaryView *summaryview) } } + g_signal_handlers_unblock_matched(G_OBJECT(summaryview->treeview), + (GSignalMatchType)G_SIGNAL_MATCH_DATA, + 0, 0, NULL, NULL, summaryview); + debug_print(_("done.\n")); STATUSBAR_POP(summaryview->mainwin); main_window_cursor_normal(summaryview->mainwin); |