diff options
| author | syuilo <4439005+syuilo@users.noreply.github.com> | 2024-07-04 13:14:49 +0900 |
|---|---|---|
| committer | syuilo <4439005+syuilo@users.noreply.github.com> | 2024-07-04 13:14:49 +0900 |
| commit | 6dd2e9fc0b1eeea6b5f04ccac93ccfab658f976d (patch) | |
| tree | 53a677d4fdaa802774a133272ed2f5f1180dd4fa /packages/frontend/src/components/MkRange.vue | |
| parent | fix(storybook): build skipping even after updating impl story files (#14124) (diff) | |
| download | misskey-6dd2e9fc0b1eeea6b5f04ccac93ccfab658f976d.tar.gz misskey-6dd2e9fc0b1eeea6b5f04ccac93ccfab658f976d.tar.bz2 misskey-6dd2e9fc0b1eeea6b5f04ccac93ccfab658f976d.zip | |
refactor(frontend): refactor popup api and make sure call dispose callback
Close #14122
Diffstat (limited to 'packages/frontend/src/components/MkRange.vue')
| -rw-r--r-- | packages/frontend/src/components/MkRange.vue | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/packages/frontend/src/components/MkRange.vue b/packages/frontend/src/components/MkRange.vue index 15f8128e98..1eae642937 100644 --- a/packages/frontend/src/components/MkRange.vue +++ b/packages/frontend/src/components/MkRange.vue @@ -101,17 +101,19 @@ const steps = computed(() => { } }); -const onMousedown = (ev: MouseEvent | TouchEvent) => { +function onMousedown(ev: MouseEvent | TouchEvent) { ev.preventDefault(); const tooltipShowing = ref(true); - os.popup(defineAsyncComponent(() => import('@/components/MkTooltip.vue')), { + const { dispose } = os.popup(defineAsyncComponent(() => import('@/components/MkTooltip.vue')), { showing: tooltipShowing, text: computed(() => { return props.textConverter(finalValue.value); }), targetElement: thumbEl, - }, {}, 'closed'); + }, { + closed: () => dispose(), + }); const style = document.createElement('style'); style.appendChild(document.createTextNode('* { cursor: grabbing !important; } body * { pointer-events: none !important; }')); @@ -152,7 +154,7 @@ const onMousedown = (ev: MouseEvent | TouchEvent) => { window.addEventListener('touchmove', onDrag); window.addEventListener('mouseup', onMouseup, { once: true }); window.addEventListener('touchend', onMouseup, { once: true }); -}; +} </script> <style lang="scss" scoped> |