;
}
-const WORKAROUNDS_COLLAPSED_KEY = "lsfg-workarounds-collapsed";
-const CONFIG_COLLAPSED_KEY = "lsfg-config-collapsed";
-
-export function ConfigurationSection({
- config,
- onConfigChange
-}: ConfigurationSectionProps) {
- // Initialize with localStorage value, fallback to true if not found
- const [configCollapsed, setConfigCollapsed] = useState(() => {
- try {
- const saved = localStorage.getItem(CONFIG_COLLAPSED_KEY);
- return saved !== null ? JSON.parse(saved) : false;
- } catch {
- return false;
- }
- });
-
- const [workaroundsCollapsed, setWorkaroundsCollapsed] = useState(() => {
- try {
- const saved = localStorage.getItem(WORKAROUNDS_COLLAPSED_KEY);
- return saved !== null ? JSON.parse(saved) : true;
- } catch {
- return true;
- }
- });
-
- // Persist workarounds collapse state to localStorage
- useEffect(() => {
- try {
- localStorage.setItem(CONFIG_COLLAPSED_KEY, JSON.stringify(configCollapsed));
- } catch (error) {
- console.warn("Failed to save config collapse state:", error);
- }
- }, [configCollapsed]);
-
- useEffect(() => {
- try {
- localStorage.setItem(WORKAROUNDS_COLLAPSED_KEY, JSON.stringify(workaroundsCollapsed));
- } catch (error) {
- console.warn("Failed to save workarounds collapse state:", error);
- }
- }, [workaroundsCollapsed]);
-
- return (
- <>
-
-
- {/* Config Section */}
-
-
- {t('CONFIG_SECTION_TITLE', 'Config')}
-
-
-
-
-
- setConfigCollapsed(!configCollapsed)}
- >
- {configCollapsed ? (
-
- ) : (
-
- )}
-
-
-
-
- {!configCollapsed && (
- <>
-
- onConfigChange(FLOW_SCALE, value)}
- />
-
-
-
- onConfigChange(NO_FP16, !value)}
- />
-
-
-
- 0 ? ` (${config.dxvk_frame_rate} FPS)` : ` (${t('CONFIG_BASE_FPS_CAP_OFF', 'Off')})`}`}
- description={t('CONFIG_BASE_FPS_CAP_DESC', 'Base framerate cap for DirectX games, before frame multiplier. (Requires game restart to apply)')}
- value={config.dxvk_frame_rate}
- min={0}
- max={60}
- step={1}
- onChange={(value) => onConfigChange(DXVK_FRAME_RATE, value)}
- />
-
-
-
- onConfigChange(EXPERIMENTAL_PRESENT_MODE, value ? "fifo" : "mailbox")}
- />
-
-
-
- onConfigChange(PERFORMANCE_MODE, value)}
- />
-
-
- >
- )}
-
- {/* Workarounds Section */}
-
-
- {t('CONFIG_WORKAROUNDS_TITLE', 'Workarounds')}
-
-
-
-
-
- setWorkaroundsCollapsed(!workaroundsCollapsed)}
- >
- {workaroundsCollapsed ? (
-
- ) : (
-
- )}
-
-
-
-
- {!workaroundsCollapsed && (
- <>
-
- onConfigChange(ENABLE_WSI, value)}
- />
-
-
-
- onConfigChange('enable_wow64', value)}
- />
-
-
-
- onConfigChange(DISABLE_STEAMDECK_MODE, value)}
- />
-
-
-
- onConfigChange(MANGOHUD_WORKAROUND, value)}
- />
-
-
-
- {
- if (value && config.force_enable_vkbasalt) {
- // Turn off force enable when enabling disable
- onConfigChange(FORCE_ENABLE_VKBASALT, false);
- }
- onConfigChange(DISABLE_VKBASALT, value);
- }}
- />
-
-
-
- {
- if (value && config.disable_vkbasalt) {
- // Turn off disable when enabling force enable
- onConfigChange(DISABLE_VKBASALT, false);
- }
- onConfigChange(FORCE_ENABLE_VKBASALT, value);
- }}
- />
-
-
-
- onConfigChange(ENABLE_ZINK, value)}
- />
-
- >
- )}
- >
- );
+export function ConfigurationSection({ config, onConfigChange }: ConfigurationSectionProps) {
+ return <>
+
+ onConfigChange(FLOW_SCALE, value)} />
+
+
+ onConfigChange(NO_FP16, !value)} />
+
+
+ onConfigChange(PERFORMANCE_MODE, value)} />
+
+
+ onConfigChange(OVERRIDE_PRESENT_MODE, value)} />
+
+
+ onConfigChange(PRESERVE_SWAPCHAIN_IMAGE_COUNT, value)} />
+
+ >;
}
--
cgit v1.2.3
From 7bc5f685186b1ff03ce0f7c99e7bec411beabaeb Mon Sep 17 00:00:00 2001
From: xXJSONDeruloXx
Date: Sun, 6 Sep 2026 22:04:54 -0400
Subject: feat: make ui suck less, frfr
---
src/components/ConfigurationSection.tsx | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
(limited to 'src/components/ConfigurationSection.tsx')
diff --git a/src/components/ConfigurationSection.tsx b/src/components/ConfigurationSection.tsx
index c2bba7e..1f17264 100644
--- a/src/components/ConfigurationSection.tsx
+++ b/src/components/ConfigurationSection.tsx
@@ -10,19 +10,19 @@ interface ConfigurationSectionProps {
export function ConfigurationSection({ config, onConfigChange }: ConfigurationSectionProps) {
return <>
- onConfigChange(FLOW_SCALE, value)} />
+ onConfigChange(FLOW_SCALE, value)} />
- onConfigChange(NO_FP16, !value)} />
+ onConfigChange(NO_FP16, !value)} />
- onConfigChange(PERFORMANCE_MODE, value)} />
+ onConfigChange(PERFORMANCE_MODE, value)} />
- onConfigChange(OVERRIDE_PRESENT_MODE, value)} />
+ onConfigChange(OVERRIDE_PRESENT_MODE, value)} />
- onConfigChange(PRESERVE_SWAPCHAIN_IMAGE_COUNT, value)} />
+ onConfigChange(PRESERVE_SWAPCHAIN_IMAGE_COUNT, value)} />
>;
}
--
cgit v1.2.3
From 954b2abc47d8772211cb8ecee523900f823184e8 Mon Sep 17 00:00:00 2001
From: xXJSONDeruloXx
Date: Fri, 11 Sep 2026 11:08:12 -0400
Subject: better uninstall cleanup
---
src/components/ConfigurationSection.tsx | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
(limited to 'src/components/ConfigurationSection.tsx')
diff --git a/src/components/ConfigurationSection.tsx b/src/components/ConfigurationSection.tsx
index 1f17264..6996bcd 100644
--- a/src/components/ConfigurationSection.tsx
+++ b/src/components/ConfigurationSection.tsx
@@ -1,6 +1,6 @@
import { PanelSectionRow, ToggleField, SliderField } from "@decky/ui";
import { ConfigurationData } from "../config/configSchema";
-import { FLOW_SCALE, PERFORMANCE_MODE, OVERRIDE_PRESENT_MODE, PRESERVE_SWAPCHAIN_IMAGE_COUNT, NO_FP16 } from "../config/configSchema";
+import { FLOW_SCALE, PERFORMANCE_MODE, OVERRIDE_PRESENT_MODE, PRESERVE_SWAPCHAIN_IMAGE_COUNT } from "../config/configSchema";
interface ConfigurationSectionProps {
config: ConfigurationData;
@@ -12,9 +12,6 @@ export function ConfigurationSection({ config, onConfigChange }: ConfigurationSe
onConfigChange(FLOW_SCALE, value)} />
-
- onConfigChange(NO_FP16, !value)} />
-
onConfigChange(PERFORMANCE_MODE, value)} />
--
cgit v1.2.3