copy method
returns a copy of this controller
why? because all flutter Listenable objects are stored in memory and passed by reference
Implementation
@override
RichTextEditorController copy() {
return RichTextEditorController(
text: text,
deltas: deltas.copy,
)
..value = value
..metadata = metadata;
}