diff options
Diffstat (limited to 'Libraries/LibGUI/TreeView.cpp')
-rw-r--r-- | Libraries/LibGUI/TreeView.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
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; } } |