diff --git a/extensions/emoji/js/forum/src/main.js b/extensions/emoji/js/forum/src/main.js index af43e47af..26ce757fc 100644 --- a/extensions/emoji/js/forum/src/main.js +++ b/extensions/emoji/js/forum/src/main.js @@ -5,8 +5,15 @@ import app from 'flarum/app'; import Post from 'flarum/models/Post'; app.initializers.add('emoji', () => { - override(Post.prototype, 'contentHtml', original => { - return twemoji.parse(original()); + override(Post.prototype, 'contentHtml', function(original) { + const contentHtml = original(); + + if (this.oldContentHtml !== contentHtml) { + this.emojifiedContentHtml = twemoji.parse(contentHtml); + this.oldContentHtml = contentHtml; + } + + return this.emojifiedContentHtml; }); override(s9e.TextFormatter, 'preview', (original, text, element) => {