diff --git a/src/kits/interface/OutlineListView.cpp b/src/kits/interface/OutlineListView.cpp index c863ff8883..2a01695027 100644 --- a/src/kits/interface/OutlineListView.cpp +++ b/src/kits/interface/OutlineListView.cpp @@ -153,8 +153,15 @@ BOutlineListView::KeyDown(const char* bytes, int32 numBytes) case B_LEFT_ARROW: { BListItem *item = ItemAt(CurrentSelection()); - if (item && item->fHasSubitems) - Collapse(item); + if (item) { + if (item->fHasSubitems) + Collapse(item); + else { + item = Superitem(item); + if (item) + Select(IndexOf(item)); + } + } return; } }