If you have checkboxes in your grid and you implement the OnCellCheckBoxClick, the event gets fired to often.
Just place a ShowMessage in the OnCellCheckBoxClick and you will see the problem.
The fix is easy:
The FIRST thing you need to do is to stop the timer.
Then handle everything else.
This is my changed code.
procedure TTMSFMXCustomGrid.DoCheckBoxTimer(Sender: TObject);
begin
FCheckBoxTimer.Enabled := False;
DoCellCheckBoxClick(FCellCheckBoxCell.Col, FCellCheckBoxCell.Row, FCellCheckBoxCellControl);
StopEdit;
end;