Example #1
0
  @Override
  public void onResume() {
    super.onResume();

    // Force keyboard open if activity started with Compose flag
    if (isCompose) {
      messageEditText.requestFocus();
      keyboardUtils.setImeVisibility(messageEditText, true);
    }
    isCompose = false;

    // Loading drafts
    isTypingDisabled = true;
    String text = messenger().loadDraft(peer);
    if (text != null) {
      // Using only links parsing to avoid non-mentions formatting
      Spannable spantext = AndroidMarkdown.processOnlyLinks(text);
      spantext = emoji().processEmojiCompatMutable(spantext, SmileProcessor.CONFIGURATION_BUBBLES);
      messageEditText.setText(spantext);
    } else {
      messageEditText.setText("");
    }
    messageEditText.setSelection(messageEditText.getText().length());
    isTypingDisabled = false;

    // TODO: Remove from ChatActivity
    // Performing actions

    if (sendUri != null && !sendUri.isEmpty()) {
      execute(messenger().sendUri(peer, Uri.parse(sendUri)));
      sendUri = "";
    }

    if (sendUriMultiple != null && sendUriMultiple.size() > 0) {
      for (String sendUri : sendUriMultiple) {
        execute(messenger().sendUri(peer, Uri.parse(sendUri)));
      }
      sendUriMultiple.clear();
    }

    if (sendText != null && !sendText.isEmpty()) {
      messageEditText.setText(sendText);
      sendText = "";
    }

    if (shareUser != 0) {
      String userName = users().get(shareUser).getName().get();
      String mentionTitle = "@".concat(userName);
      ArrayList<Integer> mention = new ArrayList<Integer>();
      mention.add(shareUser);
      messenger()
          .sendMessage(
              peer,
              mentionTitle,
              "["
                  .concat(mentionTitle)
                  .concat("](people://".concat(Integer.toString(shareUser)).concat(")")),
              mention);
      shareUser = 0;
    }

    if (forwardTextRaw != null && !forwardTextRaw.isEmpty()) {
      addQuote(forwardText, forwardTextRaw);
      forwardText = "";
      forwardTextRaw = "";
    }

    if (forwardDocDescriptor != null && !forwardDocDescriptor.isEmpty()) {
      if (forwardDocIsDoc) {
        messenger().sendDocument(peer, forwardDocDescriptor);
      } else {
        execute(messenger().sendUri(peer, Uri.fromFile(new File(forwardDocDescriptor))));
      }
      forwardDocDescriptor = "";
    }
  }