aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files
diff options
context:
space:
mode:
authorFerdinand Thiessen <opensource@fthiessen.de>2023-11-23 14:58:43 +0100
committerFerdinand Thiessen <opensource@fthiessen.de>2023-11-27 17:35:14 +0100
commitc91cdb263150efacd3a2fa4f9b2585656cd40b6a (patch)
tree6ec97641e1a809f823eb9cfd60f1274c9d74f00f /apps/files
parente30ce44dac213072e1b3b8c0a2ca37238ecee7d6 (diff)
downloadnextcloud-server-c91cdb263150efacd3a2fa4f9b2585656cd40b6a.tar.gz
nextcloud-server-c91cdb263150efacd3a2fa4f9b2585656cd40b6a.zip
fix(files): Show error message if drag-and-drop upload fails
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Diffstat (limited to 'apps/files')
-rw-r--r--apps/files/src/components/DragAndDropNotice.vue11
-rw-r--r--apps/files/src/views/FilesList.vue2
2 files changed, 9 insertions, 4 deletions
diff --git a/apps/files/src/components/DragAndDropNotice.vue b/apps/files/src/components/DragAndDropNotice.vue
index 1e53556e1f5..d18f82978a4 100644
--- a/apps/files/src/components/DragAndDropNotice.vue
+++ b/apps/files/src/components/DragAndDropNotice.vue
@@ -34,7 +34,7 @@
<script lang="ts">
import type { Upload } from '@nextcloud/upload'
-import { showSuccess } from '@nextcloud/dialogs'
+import { showError, showSuccess } from '@nextcloud/dialogs'
import { translate as t } from '@nextcloud/l10n'
import { getUploader } from '@nextcloud/upload'
import { defineComponent } from 'vue'
@@ -105,8 +105,13 @@ export default defineComponent({
// Start upload
logger.debug(`Uploading files to ${this.currentFolder.path}`)
- const promises = [...event.dataTransfer.files].map((file: File) => {
- return uploader.upload(file.name, file) as Promise<Upload>
+ const promises = [...event.dataTransfer.files].map(async (file: File) => {
+ try {
+ return await uploader.upload(file.name, file)
+ } catch (e) {
+ showError(t('files', 'Uploading "{filename}" failed', { filename: file.name }))
+ throw e
+ }
})
// Process finished uploads
diff --git a/apps/files/src/views/FilesList.vue b/apps/files/src/views/FilesList.vue
index d4c3e0b4d4c..07366f351a5 100644
--- a/apps/files/src/views/FilesList.vue
+++ b/apps/files/src/views/FilesList.vue
@@ -425,7 +425,7 @@ export default Vue.extend({
// Define current directory children
// TODO: make it more official
- Vue.set(folder, '_children', contents.map(node => node.fileid))
+ this.$set(folder, '_children', contents.map(node => node.fileid))
// If we're in the root dir, define the root
if (dir === '/') {