diff --git a/Userland/Libraries/LibGUI/TreeView.cpp b/Userland/Libraries/LibGUI/TreeView.cpp index 5613384733..1a9fa59b43 100644 --- a/Userland/Libraries/LibGUI/TreeView.cpp +++ b/Userland/Libraries/LibGUI/TreeView.cpp @@ -480,6 +480,9 @@ void TreeView::move_cursor(CursorMovement movement, SelectionUpdate selection_up { auto& model = *this->model(); + if (!cursor_index().is_valid()) + set_cursor(model.index(0, model.tree_column(), cursor_index()), SelectionUpdate::Set); + auto find_last_index_in_tree = [&](const ModelIndex tree_index) -> ModelIndex { auto last_index = tree_index; size_t row_count = model.row_count(last_index);