From 0086daf9b0d3cb3569b76e2b34da8f6df9579bb7 Mon Sep 17 00:00:00 2001 From: Tibor Nagy Date: Mon, 24 Feb 2020 14:37:47 +0100 Subject: [PATCH] LibGUI: Scroll selected treeview entries into view --- Libraries/LibGUI/TreeView.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Libraries/LibGUI/TreeView.cpp b/Libraries/LibGUI/TreeView.cpp index 407560a112..9740ea6534 100644 --- a/Libraries/LibGUI/TreeView.cpp +++ b/Libraries/LibGUI/TreeView.cpp @@ -386,6 +386,7 @@ void TreeView::keydown_event(KeyEvent& event) }); if (found_index.is_valid()) { selection().set(found_index); + scroll_into_view(selection().first(), Orientation::Vertical); update(); } return; @@ -401,8 +402,11 @@ void TreeView::keydown_event(KeyEvent& event) previous_index = index; return IterationDecision::Continue; }); - if (found_index.is_valid()) + if (found_index.is_valid()) { selection().set(found_index); + scroll_into_view(selection().first(), Orientation::Vertical); + update(); + } return; } @@ -423,6 +427,7 @@ void TreeView::keydown_event(KeyEvent& event) } if (cursor_index.is_valid() && cursor_index.parent().is_valid()) { selection().set(cursor_index.parent()); + scroll_into_view(selection().first(), Orientation::Vertical); return; } } @@ -436,6 +441,7 @@ void TreeView::keydown_event(KeyEvent& event) } selection().set(model()->index(0, model()->tree_column(), cursor_index)); + scroll_into_view(selection().first(), Orientation::Vertical); return; } }