From cf701f389d0c4aa40b992a7ec57a832d70ffe6c6 Mon Sep 17 00:00:00 2001 From: syuilo <4439005+syuilo@users.noreply.github.com> Date: Sun, 11 May 2025 13:11:05 +0900 Subject: [PATCH] wip --- .../frontend/src/components/MkDrive.file.vue | 4 +- .../src/components/MkDrive.folder.vue | 24 ++------- .../src/components/MkDrive.navFolder.vue | 22 ++------ packages/frontend/src/components/MkDrive.vue | 54 ++++++++++--------- .../frontend/src/components/MkPostForm.vue | 17 +++--- packages/frontend/src/consts.ts | 2 - .../frontend/src/pages/chat/room.form.vue | 16 +++--- 7 files changed, 57 insertions(+), 82 deletions(-) diff --git a/packages/frontend/src/components/MkDrive.file.vue b/packages/frontend/src/components/MkDrive.file.vue index 8cd28375c4..b84badf71f 100644 --- a/packages/frontend/src/components/MkDrive.file.vue +++ b/packages/frontend/src/components/MkDrive.file.vue @@ -48,7 +48,7 @@ import { $i } from '@/i.js'; import { getDriveFileMenu } from '@/utility/get-drive-file-menu.js'; import { deviceKind } from '@/utility/device-kind.js'; import { useRouter } from '@/router.js'; -import { DATA_TRANSFER_DRIVE_FILE } from '@/consts.js'; +import { DATA_TRANSFER_DRIVE_FILES } from '@/consts.js'; const router = useRouter(); @@ -91,7 +91,7 @@ function onContextmenu(ev: MouseEvent) { function onDragstart(ev: DragEvent) { if (ev.dataTransfer) { ev.dataTransfer.effectAllowed = 'move'; - ev.dataTransfer.setData(DATA_TRANSFER_DRIVE_FILE, JSON.stringify(props.file)); + ev.dataTransfer.setData(DATA_TRANSFER_DRIVE_FILES, JSON.stringify([props.file])); } isDragging.value = true; diff --git a/packages/frontend/src/components/MkDrive.folder.vue b/packages/frontend/src/components/MkDrive.folder.vue index 488844e77a..61de77ade3 100644 --- a/packages/frontend/src/components/MkDrive.folder.vue +++ b/packages/frontend/src/components/MkDrive.folder.vue @@ -42,7 +42,7 @@ import { i18n } from '@/i18n.js'; import { claimAchievement } from '@/utility/achievements.js'; import { copyToClipboard } from '@/utility/copy-to-clipboard.js'; import { prefer } from '@/preferences.js'; -import { DATA_TRANSFER_DRIVE_FILE, DATA_TRANSFER_DRIVE_FILES, DATA_TRANSFER_DRIVE_FOLDER, DATA_TRANSFER_DRIVE_FOLDERS } from '@/consts.js'; +import { DATA_TRANSFER_DRIVE_FILES, DATA_TRANSFER_DRIVE_FOLDERS } from '@/consts.js'; import { globalEvents } from '@/events.js'; const props = withDefaults(defineProps<{ @@ -95,12 +95,10 @@ function onDragover(ev: DragEvent) { } const isFile = ev.dataTransfer.items[0].kind === 'file'; - const isDriveFile = ev.dataTransfer.types[0] === DATA_TRANSFER_DRIVE_FILE; const isDriveFiles = ev.dataTransfer.types[0] === DATA_TRANSFER_DRIVE_FILES; - const isDriveFolder = ev.dataTransfer.types[0] === DATA_TRANSFER_DRIVE_FOLDER; const isDriveFolders = ev.dataTransfer.types[0] === DATA_TRANSFER_DRIVE_FOLDERS; - if (isFile || isDriveFile || isDriveFolder || isDriveFiles || isDriveFolders) { + if (isFile || isDriveFiles || isDriveFolders) { switch (ev.dataTransfer.effectAllowed) { case 'all': case 'uninitialized': @@ -144,21 +142,6 @@ function onDrop(ev: DragEvent) { } //#region ドライブのファイル - { - const driveFile = ev.dataTransfer.getData(DATA_TRANSFER_DRIVE_FILE); - if (driveFile != null && driveFile !== '') { - const file = JSON.parse(driveFile); - misskeyApi('drive/files/update', { - fileId: file.id, - folderId: props.folder.id, - }).then(() => { - globalEvents.emit('driveFilesMoved', [file], props.folder); - }); - } - } - //#endregion - - //#region ドライブのファイル(複数) { const driveFiles = ev.dataTransfer.getData(DATA_TRANSFER_DRIVE_FILES); if (driveFiles != null && driveFiles !== '') { @@ -174,8 +157,9 @@ function onDrop(ev: DragEvent) { //#endregion //#region ドライブのフォルダ + // TODO { - const driveFolder = ev.dataTransfer.getData(DATA_TRANSFER_DRIVE_FOLDER); + const driveFolder = ev.dataTransfer.getData(DATA_TRANSFER_DRIVE_FOLDERS); if (driveFolder != null && driveFolder !== '') { const folder = JSON.parse(driveFolder); diff --git a/packages/frontend/src/components/MkDrive.navFolder.vue b/packages/frontend/src/components/MkDrive.navFolder.vue index 6b106810cd..dd7031f111 100644 --- a/packages/frontend/src/components/MkDrive.navFolder.vue +++ b/packages/frontend/src/components/MkDrive.navFolder.vue @@ -21,7 +21,7 @@ import { ref } from 'vue'; import * as Misskey from 'misskey-js'; import { misskeyApi } from '@/utility/misskey-api.js'; import { i18n } from '@/i18n.js'; -import { DATA_TRANSFER_DRIVE_FILE, DATA_TRANSFER_DRIVE_FILES, DATA_TRANSFER_DRIVE_FOLDER, DATA_TRANSFER_DRIVE_FOLDERS } from '@/consts.js'; +import { DATA_TRANSFER_DRIVE_FILES, DATA_TRANSFER_DRIVE_FOLDERS } from '@/consts.js'; import { globalEvents } from '@/events.js'; const props = defineProps<{ @@ -44,12 +44,10 @@ function onDragover(ev: DragEvent) { } const isFile = ev.dataTransfer.items[0].kind === 'file'; - const isDriveFile = ev.dataTransfer.types[0] === DATA_TRANSFER_DRIVE_FILE; const isDriveFiles = ev.dataTransfer.types[0] === DATA_TRANSFER_DRIVE_FILES; - const isDriveFolder = ev.dataTransfer.types[0] === DATA_TRANSFER_DRIVE_FOLDER; const isDriveFolders = ev.dataTransfer.types[0] === DATA_TRANSFER_DRIVE_FOLDERS; - if (isFile || isDriveFile || isDriveFolder || isDriveFiles || isDriveFolders) { + if (isFile || isDriveFiles || isDriveFolders) { switch (ev.dataTransfer.effectAllowed) { case 'all': case 'uninitialized': @@ -95,21 +93,6 @@ function onDrop(ev: DragEvent) { } //#region ドライブのファイル - { - const driveFile = ev.dataTransfer.getData(DATA_TRANSFER_DRIVE_FILE); - if (driveFile != null && driveFile !== '') { - const file = JSON.parse(driveFile); - misskeyApi('drive/files/update', { - fileId: file.id, - folderId: props.folder ? props.folder.id : null, - }).then(() => { - globalEvents.emit('driveFilesMoved', [file], props.folder ?? null); - }); - } - } - //#endregion - - //#region ドライブのファイル(複数) { const driveFiles = ev.dataTransfer.getData(DATA_TRANSFER_DRIVE_FILES); if (driveFiles != null && driveFiles !== '') { @@ -125,6 +108,7 @@ function onDrop(ev: DragEvent) { //#endregion //#region ドライブのフォルダ + // TODO { const driveFolder = ev.dataTransfer.getData(DATA_TRANSFER_DRIVE_FOLDER); if (driveFolder != null && driveFolder !== '') { diff --git a/packages/frontend/src/components/MkDrive.vue b/packages/frontend/src/components/MkDrive.vue index 6b32820a84..a0896d4b4f 100644 --- a/packages/frontend/src/components/MkDrive.vue +++ b/packages/frontend/src/components/MkDrive.vue @@ -83,14 +83,22 @@ SPDX-License-Identifier: AGPL-3.0-only