diff options
Diffstat (limited to 'packages/frontend/src/components/MkReactionsViewer.reaction.vue')
| -rw-r--r-- | packages/frontend/src/components/MkReactionsViewer.reaction.vue | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/packages/frontend/src/components/MkReactionsViewer.reaction.vue b/packages/frontend/src/components/MkReactionsViewer.reaction.vue index f74f5ec21c..6506035f8f 100644 --- a/packages/frontend/src/components/MkReactionsViewer.reaction.vue +++ b/packages/frontend/src/components/MkReactionsViewer.reaction.vue @@ -114,10 +114,12 @@ async function menu(ev) { text: i18n.ts.info, icon: 'ti ti-info-circle', action: async () => { - os.popup(MkCustomEmojiDetailedDialog, { + const { dispose } = os.popup(MkCustomEmojiDetailedDialog, { emoji: await misskeyApiGet('emoji', { name: props.reaction.replace(/:/g, '').replace(/@\./, ''), }), + }, { + closed: () => dispose(), }); }, }], ev.currentTarget ?? ev.target); @@ -129,7 +131,9 @@ function anime() { const rect = buttonEl.value.getBoundingClientRect(); const x = rect.left + 16; const y = rect.top + (buttonEl.value.offsetHeight / 2); - os.popup(MkReactionEffect, { reaction: props.reaction, x, y }, {}, 'end'); + const { dispose } = os.popup(MkReactionEffect, { reaction: props.reaction, x, y }, { + end: () => dispose(), + }); } watch(() => props.count, (newCount, oldCount) => { @@ -151,13 +155,15 @@ if (!mock) { const users = reactions.map(x => x.user); - os.popup(XDetails, { + const { dispose } = os.popup(XDetails, { showing, reaction: props.reaction, users, count: props.count, targetElement: buttonEl.value, - }, {}, 'closed'); + }, { + closed: () => dispose(), + }); }, 100); } </script> |