diff --git a/src/renderer/components/BottomBar.tsx b/src/renderer/components/BottomBar.tsx index a0fbee7..63bddaf 100644 --- a/src/renderer/components/BottomBar.tsx +++ b/src/renderer/components/BottomBar.tsx @@ -112,6 +112,8 @@ export default function BottomBar({ onClose, onHeightChange }: BottomBarProps): ? 'Capture Failed' : 'Idle' + const trimPercent = Math.min(100, Math.max(0, ((inputGainDb + 12) / 24) * 100)) + return (
@@ -238,6 +240,7 @@ export default function BottomBar({ onClose, onHeightChange }: BottomBarProps): max={12} step={0.5} value={inputGainDb} + style={{ '--range-percent': `${trimPercent}%` } as CSSProperties} onChange={(event) => setInputGain(Number(event.target.value))} onDoubleClick={() => setInputGain(0)} /> diff --git a/src/renderer/components/ScopeSettingsSection.tsx b/src/renderer/components/ScopeSettingsSection.tsx index 9230801..5949d28 100644 --- a/src/renderer/components/ScopeSettingsSection.tsx +++ b/src/renderer/components/ScopeSettingsSection.tsx @@ -1,4 +1,4 @@ -import type { JSX, ReactNode } from 'react' +import type { CSSProperties, JSX, ReactNode } from 'react' import type { ScopeKind } from '../../types/scope' import { SCOPE_LABELS } from '../../types/scope' import type { ScopeSettings } from '../../types/settings' @@ -137,6 +137,10 @@ function RangeControl({ disabled?: boolean onChange: (value: number) => void }): JSX.Element { + const percent = max > min + ? Math.min(100, Math.max(0, ((value - min) / (max - min)) * 100)) + : 0 + return (