diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 07574035b5..6c05b975ba 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -3274,6 +3274,20 @@ void wxDataViewMainWindow::OnChar( wxKeyEvent &event ) switch ( event.GetKeyCode() ) { + case WXK_RETURN: + { + if (m_currentRow > 0) + { + wxWindow *parent = GetParent(); + wxDataViewEvent le(wxEVT_COMMAND_DATAVIEW_ITEM_ACTIVATED, parent->GetId()); + le.SetItem( GetItemByRow(m_currentRow) ); + le.SetEventObject(parent); + le.SetModel(GetOwner()->GetModel()); + + parent->GetEventHandler()->ProcessEvent(le); + } + break; + } case WXK_UP: if ( m_currentRow > 0 ) OnArrowChar( m_currentRow - 1, event );