diff --git a/src/generic/grid.cpp b/src/generic/grid.cpp index 448a7c1fd3..1ff91e8273 100644 --- a/src/generic/grid.cpp +++ b/src/generic/grid.cpp @@ -6101,8 +6101,7 @@ void wxGrid::OnKeyDown( wxKeyEvent& event ) else { // at the bottom of a column - HideCellEditControl(); - SaveEditControlValue(); + DisableCellEditControl(); } } break; @@ -6121,8 +6120,7 @@ void wxGrid::OnKeyDown( wxKeyEvent& event ) else { // at left of grid - HideCellEditControl(); - SaveEditControlValue(); + DisableCellEditControl(); } } else @@ -6134,8 +6132,7 @@ void wxGrid::OnKeyDown( wxKeyEvent& event ) else { // at right of grid - HideCellEditControl(); - SaveEditControlValue(); + DisableCellEditControl(); } } break; @@ -6284,7 +6281,6 @@ void wxGrid::SetCurrentCell( const wxGridCellCoords& coords ) if ( m_currentCellCoords != wxGridNoCellCoords ) { - HideCellEditControl(); DisableCellEditControl(); if ( IsVisible( m_currentCellCoords, FALSE ) ) @@ -9247,6 +9243,10 @@ void wxGrid::AutoSizeColOrRow( int colOrRow, bool setAsMin, bool column ) { wxClientDC dc(m_gridWin); + //Cancel editting of cell + HideCellEditControl(); + SaveEditControlValue(); + // init both of them to avoid compiler warnings, even if weo nly need one int row = -1, col = -1;