diff --git a/CHANGELOG.md b/CHANGELOG.md index d084006562c..ff41135b95b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ - Fix: 一部のUI要素の色が正しく表示されない問題を修正 (Cherry-picked from https://github.com/MisskeyIO/misskey/pull/1243) - Fix: 「D」キーでダークモードを切り替える際にsyncDeviceDarkModeのチェックがバイパスされる問題を修正 +- enhance(frontend): MkDraggable をタッチ操作 (長押し → ドラッグ) に対応 ### Server - Enhance: リモートノートクリーニングジョブのスキップ処理のパフォーマンス改善 diff --git a/packages/frontend/src/components/MkDraggable.vue b/packages/frontend/src/components/MkDraggable.vue index 6e2e038f87d..3a2785ddcdf 100644 --- a/packages/frontend/src/components/MkDraggable.vue +++ b/packages/frontend/src/components/MkDraggable.vue @@ -17,6 +17,7 @@ SPDX-License-Identifier: AGPL-3.0-only
- +
void) | null = null; + +// タッチ操作はDataTransferが使えないので、インスタンス間連携用にmodule-levelレジストリを用意する +type TouchDropHandler = (draggedItem: { id: string }, sourceGroup: string, targetItemId: string, backward: boolean) => void; +type TouchEmptyDropHandler = (draggedItem: { id: string }, sourceGroup: string) => void; +const touchDropHandlers = new Map(); +const touchEmptyDropHandlers = new Map(); + +// 全インスタンスで共有するタッチドロップ位置 (インスタンスIDで自インスタンス判定する) +const touchDropTarget = ref<{ instanceId: string; itemId: string; area: 'forward' | 'backward' } | null>(null);