editTextMessage method

dynamic editTextMessage()

Implementation

editTextMessage() {
  if (textEditingController == null) return;
  TextMessage editedMessage = oldMessage as TextMessage;
  editedMessage.text = textEditingController!.text;
  handlePreMessageSend(editedMessage);
  messagePreviewTitle = '';
  messagePreviewSubtitle = '';
  previewMessageMode = PreviewMessageMode.none;
  textEditingController?.clear();
  _previousText = '';
  update();


  if (onSendButtonTap != null) {
    onSendButtonTap!(context, editedMessage, PreviewMessageMode.edit);
  } else {
    CometChat.editMessage(editedMessage,
        onSuccess: (BaseMessage updatedMessage) {
      _playSound();

      CometChatMessageEvents.ccMessageEdited(
          updatedMessage, MessageEditStatus.success);
    },
        onError: onError ??
            (CometChatException e) {
              if (editedMessage.metadata != null) {
                editedMessage.metadata!["error"] = e;
              } else {
                editedMessage.metadata = {"error": e};
              }
              CometChatMessageEvents.ccMessageSent(
                  editedMessage, MessageStatus.error);

              if (kDebugMode) {
                debugPrint(
                    "Message editing failed with exception: ${e.message}");
              }
            });
  }
  update();
}