summaryrefslogtreecommitdiff
path: root/packages/frontend/src/directives
diff options
context:
space:
mode:
Diffstat (limited to 'packages/frontend/src/directives')
-rw-r--r--packages/frontend/src/directives/hotkey.ts6
-rw-r--r--packages/frontend/src/directives/ripple.ts4
-rw-r--r--packages/frontend/src/directives/tooltip.ts6
-rw-r--r--packages/frontend/src/directives/user-preview.ts5
4 files changed, 13 insertions, 8 deletions
diff --git a/packages/frontend/src/directives/hotkey.ts b/packages/frontend/src/directives/hotkey.ts
index b082b6edf2..0e5c7ede24 100644
--- a/packages/frontend/src/directives/hotkey.ts
+++ b/packages/frontend/src/directives/hotkey.ts
@@ -4,7 +4,7 @@
*/
import { Directive } from 'vue';
-import { makeHotkey } from '../scripts/hotkey.js';
+import { makeHotkey } from '@/scripts/hotkey.js';
export default {
mounted(el, binding) {
@@ -13,9 +13,9 @@ export default {
el._keyHandler = makeHotkey(binding.value);
if (el._hotkey_global) {
- document.addEventListener('keydown', el._keyHandler);
+ document.addEventListener('keydown', el._keyHandler, { passive: false });
} else {
- el.addEventListener('keydown', el._keyHandler);
+ el.addEventListener('keydown', el._keyHandler, { passive: false });
}
},
diff --git a/packages/frontend/src/directives/ripple.ts b/packages/frontend/src/directives/ripple.ts
index 2d724f771e..a043ff212d 100644
--- a/packages/frontend/src/directives/ripple.ts
+++ b/packages/frontend/src/directives/ripple.ts
@@ -17,7 +17,9 @@ export default {
const x = rect.left + (el.offsetWidth / 2);
const y = rect.top + (el.offsetHeight / 2);
- popup(MkRippleEffect, { x, y }, {}, 'end');
+ const { dispose } = popup(MkRippleEffect, { x, y }, {
+ end: () => dispose(),
+ });
});
},
};
diff --git a/packages/frontend/src/directives/tooltip.ts b/packages/frontend/src/directives/tooltip.ts
index b1c1b19907..251ce5675f 100644
--- a/packages/frontend/src/directives/tooltip.ts
+++ b/packages/frontend/src/directives/tooltip.ts
@@ -51,13 +51,15 @@ export default {
if (self.text == null) return;
const showing = ref(true);
- popup(defineAsyncComponent(() => import('@/components/MkTooltip.vue')), {
+ const { dispose } = popup(defineAsyncComponent(() => import('@/components/MkTooltip.vue')), {
showing,
text: self.text,
asMfm: binding.modifiers.mfm,
direction: binding.modifiers.left ? 'left' : binding.modifiers.right ? 'right' : binding.modifiers.top ? 'top' : binding.modifiers.bottom ? 'bottom' : 'top',
targetElement: el,
- }, {}, 'closed');
+ }, {
+ closed: () => dispose(),
+ });
self._close = () => {
showing.value = false;
diff --git a/packages/frontend/src/directives/user-preview.ts b/packages/frontend/src/directives/user-preview.ts
index 7a008a4486..278d842d09 100644
--- a/packages/frontend/src/directives/user-preview.ts
+++ b/packages/frontend/src/directives/user-preview.ts
@@ -35,7 +35,7 @@ export class UserPreview {
const showing = ref(true);
- popup(defineAsyncComponent(() => import('@/components/MkUserPopup.vue')), {
+ const { dispose } = popup(defineAsyncComponent(() => import('@/components/MkUserPopup.vue')), {
showing,
q: this.user,
source: this.el,
@@ -47,7 +47,8 @@ export class UserPreview {
window.clearTimeout(this.showTimer);
this.hideTimer = window.setTimeout(this.close, 500);
},
- }, 'closed');
+ closed: () => dispose(),
+ });
this.promise = {
cancel: () => {