From 43bcc40907b0b4cb5c66fb146900560c1ae88caf Mon Sep 17 00:00:00 2001 From: Marco Piovanello <35533749+marcopiovanello@users.noreply.github.com> Date: Sat, 29 Mar 2025 21:27:28 +0100 Subject: [PATCH] 293 tiny gui improvement (#296) * clicking on the speed dial will open download dialog * refactor: prevent multiple slashes --- frontend/src/atoms/settings.ts | 19 +++++++++++++------ frontend/src/components/HomeSpeedDial.tsx | 1 + 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/frontend/src/atoms/settings.ts b/frontend/src/atoms/settings.ts index 986531f..89fe210 100644 --- a/frontend/src/atoms/settings.ts +++ b/frontend/src/atoms/settings.ts @@ -119,21 +119,28 @@ export const appTitleState = atomWithStorage( ) export const serverAddressAndPortState = atom((get) => { + let retval = '' + if (get(servedFromReverseProxySubDirState)) { - return `${get(serverAddressState)}/${get(servedFromReverseProxySubDirState)}/` + retval = `${get(serverAddressState)}/${get(servedFromReverseProxySubDirState)}/` .replaceAll('"', '') // TODO: atomWithStorage put extra double quotes on strings } if (get(servedFromReverseProxyState)) { - return `${get(serverAddressState)}` + retval = `${get(serverAddressState)}` .replaceAll('"', '') } - return `${get(serverAddressState)}:${get(serverPortState)}` + retval = `${get(serverAddressState)}:${get(serverPortState)}` .replaceAll('"', '') + + return retval.endsWith('/') ? retval.slice(0, -1) : retval }) -export const serverURL = atom((get) => - `${window.location.protocol}//${get(serverAddressAndPortState)}` -) +export const serverURL = atom((get) => { + const _serverURL = `${window.location.protocol}//${get(serverAddressAndPortState)}` + return _serverURL.endsWith('/') + ? _serverURL.slice(0, -1) + : _serverURL +}) export const rpcWebSocketEndpoint = atom((get) => { const proto = window.location.protocol === 'https:' ? 'wss:' : 'ws:' diff --git a/frontend/src/components/HomeSpeedDial.tsx b/frontend/src/components/HomeSpeedDial.tsx index ab8432f..b9946b5 100644 --- a/frontend/src/components/HomeSpeedDial.tsx +++ b/frontend/src/components/HomeSpeedDial.tsx @@ -32,6 +32,7 @@ const HomeSpeedDial: React.FC = ({ onDownloadOpen, onEditorOpen }) => { ariaLabel="Home speed dial" sx={{ position: 'absolute', bottom: 64, right: 24 }} icon={} + onClick={onDownloadOpen} > : }