procedure TDataForm.grdDataKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
ed: TStringCellEditor;
begin
{$IFDEF DARWIN}
if Key in [VK_RETURN, VK_LEFT, VK_UP, VK_RIGHT, VK_DOWN{, VK_TAB}] then begin // done
grdData.OnEditingDone := fOnEditingDone;
end else begin // not done
grdData.OnEditingDone := nil;
if grdData.Editor is TStringCellEditor then begin
ed := TStringCellEditor(grdData.Editor);
if Length(ed.EditText) = 1 then begin
ed.SelStart := 1;
ed.SelLength := 0;
end;
end;
end;
{$ENDIF}
end;