Check out EditManager.finalizeDo() where it says:
if (_undoManager.canUndo() && allowOperationMerge)
{
var lastOp:FlowOperation = _undoManager.peekUndo() as FlowOperation;
if (lastOp)
{
// Try to merge the last operation on the stack with the current
// operation. This may modify lastOp, or return a new operation
var combinedOp:FlowOperation = lastOp.merge(op);
if (combinedOp)
{
combinedOp.setGenerations(lastOp.beginGeneration,textFlow.generation);
_undoManager.popUndo();
op = combinedOp;
}
}
}
That's where it's doing the combining of each letter. You might be able to get away with setting allowOperationMerge to false. Or override the function and take this part out. I'm not sure what other consequences those options will have though as I haven't tried it. The UndoManager is simple; you mainly will want to dig into EditManager.