diff --git a/src/plugins/sib-reply-to-message.js b/src/plugins/sib-reply-to-message.js
index cc36c79755b5ee1143e316922c617b7ef9f4e540..2b7e8d05f8c4f97a33719092a513770b245386b2 100644
--- a/src/plugins/sib-reply-to-message.js
+++ b/src/plugins/sib-reply-to-message.js
@@ -1,17 +1,22 @@
 /**
  * Add an action button to reply to a message.
+ * TODO: Add settings to handle this plugin
  */
 converse.plugins.add('sib-reply-to-message', {
   initialize() {
     const _converse = this._converse;
     const { api, __ } = _converse;
-    const { utils } = converse.env;
+    const { utils, _ } = converse.env;
+
+    function removeQuotedMessages(text) {
+      return text.replace(/^>.*(\n)?/gm, '');
+    }
 
     api.listen.on('getMessageActionButtons', (el, buttons) => {
 
       // Do not add if the message is not from a MUC
       // Do not add if the message is from the current user
-      if (el.model.get('type') !== 'groupchat' || el.model.get('from_real_jid') === _converse.bare_jid) {
+      if (el.model.get('type') !== 'groupchat' || el.model.get('sender') === 'me') {
         return buttons;
       }
 
@@ -19,7 +24,16 @@ converse.plugins.add('sib-reply-to-message', {
         'i18n_text': __('Reply'),
         'handler': ev => {
           const chat_textarea = utils.ancestor(el, '.chatbox')?.querySelector('.chat-textarea');
-          chat_textarea.value = `@${el.model.get('nick')} `;
+          chat_textarea.value = '';
+
+          // Add the previous message without quoted messages (to avoid blockquotes into blockquotes)
+          const message = _.truncate(removeQuotedMessages(el.model.get('message')), { length: 100 });
+          if (message.length > 0) {
+            chat_textarea.value += `${message.replace(/^/gm, '>')}\n`;
+          }
+
+          // Add mention to the initial user and focus textarea
+          chat_textarea.value += `@${el.model.get('nick')} `;
           chat_textarea.focus();
         },
         'button_class': 'chat-msg__action-reply',