From c0d254a71ed28da212d09fb48f9fea466d2a56b8 Mon Sep 17 00:00:00 2001 From: Alex Andreev Date: Tue, 2 Aug 2022 10:45:46 +0300 Subject: [PATCH] Drop waiting state on network or other error Signed-off-by: Alex Andreev --- .../dock/logs/download-logs-dropdown.tsx | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/renderer/components/dock/logs/download-logs-dropdown.tsx b/src/renderer/components/dock/logs/download-logs-dropdown.tsx index 6bfc02b441..c5e078f7ba 100644 --- a/src/renderer/components/dock/logs/download-logs-dropdown.tsx +++ b/src/renderer/components/dock/logs/download-logs-dropdown.tsx @@ -6,13 +6,12 @@ import styles from "./download-logs-dropdown.module.scss"; import React, { useState } from "react"; -import { cssNames } from "../../../utils"; import { Icon } from "../../icon"; import { Menu, MenuItem } from "../../menu"; interface DownloadLogsDropdownProps { - downloadVisibleLogs: () => Promise - downloadAllLogs: () => Promise + downloadVisibleLogs: () => Promise + downloadAllLogs: () => Promise } export function DownloadLogsDropdown({ downloadAllLogs, downloadVisibleLogs }: DownloadLogsDropdownProps) { @@ -23,10 +22,13 @@ export function DownloadLogsDropdown({ downloadAllLogs, downloadVisibleLogs }: D setOpened(!opened); }; - const downloadLogs = async (download: () => Promise) => { + const downloadLogs = async (download: () => Promise) => { setWaiting(true); - await download(); - setWaiting(false); + try { + await download(); + } finally { + setWaiting(false); + } } return ( @@ -34,7 +36,8 @@ export function DownloadLogsDropdown({ downloadAllLogs, downloadVisibleLogs }: D