diff --git a/public/src/client/topic.js b/public/src/client/topic.js index ebbe8f7868..f9a8ca05b3 100644 --- a/public/src/client/topic.js +++ b/public/src/client/topic.js @@ -181,6 +181,12 @@ define('forum/topic', [ Topic.applyDropup.call(this); } }); + hooks.onPage('action:topic.tools.load', ({ element }) => { + Topic.applyDropup.call(element.get(0).parentNode); + }); + hooks.onPage('action:post.tools.load', ({ element }) => { + Topic.applyDropup.call(element.get(0).parentNode); + }); } function addRepliesHandler() { diff --git a/public/src/client/topic/postTools.js b/public/src/client/topic/postTools.js index 28b1119a3f..e9b5602145 100644 --- a/public/src/client/topic/postTools.js +++ b/public/src/client/topic/postTools.js @@ -32,7 +32,6 @@ define('forum/topic/postTools', [ function renderMenu() { $('[component="topic"]').on('show.bs.dropdown', '.moderator-tools', function () { - const self = this; const $this = $(this); const dropdownMenu = $this.find('.dropdown-menu'); if (dropdownMenu.html()) { @@ -50,15 +49,14 @@ define('forum/topic/postTools', [ const html = await app.parseAndTranslate('partials/topic/post-menu-list', data); const clipboard = require('clipboard'); - // eslint-disable-next-line import/no-unresolved - const topic = require('forum/topic'); dropdownMenu.html(html); dropdownMenu.get(0).classList.toggle('hidden', false); - topic.applyDropup.call(self); new clipboard('[data-clipboard-text]'); - hooks.fire('action:post.tools.load'); + hooks.fire('action:post.tools.load', { + element: dropdownMenu, + }); }); }); }