diff --git a/core/frontend/src/views/SettingsView.vue b/core/frontend/src/views/SettingsView.vue index 008ad7f71a..4d6b79cedf 100644 --- a/core/frontend/src/views/SettingsView.vue +++ b/core/frontend/src/views/SettingsView.vue @@ -240,6 +240,7 @@ class="mr-2" outlined small + :disabled="deletion_in_progress" @click="download_service_log_files" > @@ -251,7 +252,7 @@ v-tooltip="'Free up space by removing old logs'" outlined small - :disabled="disable_remove || deletion_in_progress" + :disabled="disable_remove || deletion_in_progress || downloading" color="error" @click="remove_service_log_files" > @@ -516,6 +517,7 @@ export default Vue.extend({ operation_description: '', operation_error: undefined as undefined | string, deletion_in_progress: false, + downloading: false, deletion_log_abort_controller: null as null | AbortController, current_deletion_path: '', current_deletion_size: 0, @@ -563,8 +565,13 @@ export default Vue.extend({ }, async download_service_log_files(): Promise { - const folder = await filebrowser.fetchFolder('system_logs') - await filebrowser.downloadFolder(folder) + this.downloading = true + try { + const folder = await filebrowser.fetchFolder('system_logs') + await filebrowser.downloadFolder(folder) + } finally { + this.downloading = false + } }, async download_mavlink_log_files(): Promise {