Fix button cloning method.

This commit is contained in:
John Livingston
2024-04-11 15:14:50 +02:00
parent 1689657aa7
commit eee07da1e3
3 changed files with 22 additions and 4 deletions

View File

@ -21,5 +21,16 @@ export const livechatMiniMucHeadPlugin = {
buttons = buttons.filter(b => b.name !== 'toggle-topic')
return buttons
})
const restoreClonedButtons = (): void => {
console.log('[peertube-plugin-livechat] Removing class peertube-plugin-livechat-buttons-cloned')
document.querySelectorAll(
'.peertube-plugin-livechat-buttons-cloned'
).forEach(el => el.classList.remove('peertube-plugin-livechat-buttons-cloned'))
}
// muc-head can hide buttons that are cloned, so we restore them on disconnection and chatbox closing.
_converse.api.listen.on('disconnected', restoreClonedButtons)
_converse.api.listen.on('chatBoxClosed', restoreClonedButtons)
}
}