diff --git a/src/locales/en/translation.json b/src/locales/en/translation.json index 4b5ac89b..bf6d26ff 100755 --- a/src/locales/en/translation.json +++ b/src/locales/en/translation.json @@ -600,7 +600,8 @@ "autoplay_trailers_on_game_page": "Automatically start playing trailers on game page", "hide_to_tray_on_game_start": "Hide Hydra to tray on game startup", "downloads": "Downloads", - "use_native_http_downloader": "Use native HTTP downloader (experimental)" + "use_native_http_downloader": "Use native HTTP downloader (experimental)", + "cannot_change_downloader_while_downloading": "Cannot change this setting while a download is in progress" }, "notifications": { "download_complete": "Download complete", diff --git a/src/renderer/src/pages/settings/settings-general.scss b/src/renderer/src/pages/settings/settings-general.scss index 8a6a0ac1..9f9d698f 100644 --- a/src/renderer/src/pages/settings/settings-general.scss +++ b/src/renderer/src/pages/settings/settings-general.scss @@ -18,6 +18,13 @@ align-self: flex-start; } + &__disabled-hint { + font-size: 13px; + color: globals.$muted-color; + margin-top: calc(globals.$spacing-unit * -1); + font-style: italic; + } + &__volume-control { display: flex; flex-direction: column; diff --git a/src/renderer/src/pages/settings/settings-general.tsx b/src/renderer/src/pages/settings/settings-general.tsx index fd1dd034..52dd43f8 100644 --- a/src/renderer/src/pages/settings/settings-general.tsx +++ b/src/renderer/src/pages/settings/settings-general.tsx @@ -37,6 +37,12 @@ export function SettingsGeneral() { (state) => state.userPreferences.value ); + const lastPacket = useAppSelector((state) => state.download.lastPacket); + const hasActiveDownload = + lastPacket !== null && + lastPacket.progress < 1 && + !lastPacket.isDownloadingMetadata; + const [canInstallCommonRedist, setCanInstallCommonRedist] = useState(false); const [installingCommonRedist, setInstallingCommonRedist] = useState(false); @@ -256,6 +262,7 @@ export function SettingsGeneral() { handleChange({ useNativeHttpDownloader: !form.useNativeHttpDownloader, @@ -263,6 +270,12 @@ export function SettingsGeneral() { } /> + {hasActiveDownload && ( +

+ {t("cannot_change_downloader_while_downloading")} +

+ )} +

{t("notifications")}