insertTable function
void
insertTable()
Implementation
void insertTable(int rows, int columns, QuillController quillController,
ChangeSource? changeFrom) {
final tableData = _createTableData(rows, columns);
final delta = Delta()..insert({'table': tableData});
final selection = quillController.selection;
final replacedLength = selection.extentOffset - selection.baseOffset;
final newBaseOffset = selection.baseOffset;
final newExtentOffsetCandidate =
(selection.baseOffset + 1 - replacedLength).toInt();
final newExtentOffsetAdjusted =
newExtentOffsetCandidate < 0 ? 0 : newExtentOffsetCandidate;
quillController.replaceText(
newBaseOffset,
replacedLength,
delta,
TextSelection(
baseOffset: newBaseOffset, extentOffset: newExtentOffsetAdjusted),
);
}