/// <inheritdoc />
            public override void Undo(DocumentEditorContext context)
            {
                var caret = (TextCaret)_endOfPreviousBlockHandle.GetCaret(context);

                TextBlockHelperMethods.TryBreakBlock(caret);

                context.Selection.Replace(_originalCaretPosition.GetCaret(context));
            }
            /// <inheritdoc />
            public override void Do(DocumentEditorContext context)
            {
                var caret         = (TextCaret)_handle.GetCaret(context);
                var caretPosition = TextBlockHelperMethods.TryBreakBlock(caret);

                if (!caretPosition.IsValid)
                {
                    return;
                }
                context.Selection.Replace(caretPosition);
            }