diff options
author | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2005-05-23 08:31:26 +0000 |
---|---|---|
committer | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2005-05-23 08:31:26 +0000 |
commit | 91146ec1ec9d8cba872f0d9b564c6130ef700d30 (patch) | |
tree | 12b6a2229d0d022bbfbfad547b22799851487be7 /src/summaryview.c | |
parent | b8ba4b406903f145247450c6a692813f6b2b795f (diff) |
modified summary_step().
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@277 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src/summaryview.c')
-rw-r--r-- | src/summaryview.c | 31 |
1 files changed, 12 insertions, 19 deletions
diff --git a/src/summaryview.c b/src/summaryview.c index a2618736..289f06e9 100644 --- a/src/summaryview.c +++ b/src/summaryview.c @@ -2207,31 +2207,24 @@ gboolean summary_step(SummaryView *summaryview, GtkScrollType type) { GtkTreeModel *model = GTK_TREE_MODEL(summaryview->store); GtkTreeIter iter; - gboolean moved; if (summary_is_locked(summaryview)) return FALSE; + if (!gtkut_tree_row_reference_get_iter + (model, summaryview->selected, &iter)) + return FALSE; + if (type == GTK_SCROLL_STEP_FORWARD) { - if (summaryview->selected) { - if (gtkut_tree_row_reference_get_iter - (model, summaryview->selected, &iter) && - gtkut_tree_model_next(model, &iter)) - gtkut_tree_view_expand_parent_all - (GTK_TREE_VIEW(summaryview->treeview), - &iter); - else - return FALSE; - } + if (!gtkut_tree_model_next(model, &iter)) + return FALSE; + } else { + if (!gtkut_tree_model_prev(model, &iter)) + return FALSE; } - if (messageview_is_visible(summaryview->messageview)) - summaryview->display_msg = TRUE; - - gtk_widget_grab_focus(summaryview->treeview); - g_signal_emit_by_name(G_OBJECT(summaryview->treeview), "move-cursor", - GTK_MOVEMENT_DISPLAY_LINES, - type == GTK_SCROLL_STEP_FORWARD ? 1 : -1, - &moved); + summary_select_row(summaryview, &iter, + messageview_is_visible(summaryview->messageview), + FALSE); return TRUE; } |