From fa450d43a50df6c9e09c4ceb3059b66345bdc50f Mon Sep 17 00:00:00 2001 From: xXJSONDeruloXx Date: Thu, 24 Jul 2025 10:24:22 -0400 Subject: add collapsible workarounds args drawer --- src/components/ConfigurationSection.tsx | 191 +++++++++++++++++--------------- 1 file changed, 104 insertions(+), 87 deletions(-) (limited to 'src') diff --git a/src/components/ConfigurationSection.tsx b/src/components/ConfigurationSection.tsx index 135d8fb..7c8923e 100644 --- a/src/components/ConfigurationSection.tsx +++ b/src/components/ConfigurationSection.tsx @@ -1,4 +1,6 @@ -import { PanelSectionRow, ToggleField, SliderField, DropdownItem } from "@decky/ui"; +import { PanelSectionRow, ToggleField, SliderField, DropdownItem, ButtonItem } from "@decky/ui"; +import { useState } from "react"; +import { RiArrowDownSFill, RiArrowUpSFill } from "react-icons/ri"; import { ConfigurationData } from "../config/configSchema"; import { FpsMultiplierControl } from "./FpsMultiplierControl"; import { @@ -16,6 +18,8 @@ export function ConfigurationSection({ config, onConfigChange }: ConfigurationSectionProps) { + const [workaroundsCollapsed, setWorkaroundsCollapsed] = useState(true); + return ( <> @@ -97,32 +101,6 @@ export function ConfigurationSection({ /> - -
- Environment Variables -
-
- Must be toggled before game start or restart game to take effect -
-
- 0 ? ` (${config.dxvk_frame_rate} FPS)` : ' (Off)'}`} @@ -135,73 +113,112 @@ export function ConfigurationSection({ /> + {/* Workarounds Section */} - 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); +
+ > + Workarounds +
- { - if (value && config.disable_vkbasalt) { - // Turn off disable when enabling force enable - onConfigChange(DISABLE_VKBASALT, false); - } - onConfigChange(FORCE_ENABLE_VKBASALT, value); - }} - /> + setWorkaroundsCollapsed(!workaroundsCollapsed)} + > + {workaroundsCollapsed ? ( + + ) : ( + + )} + - - onConfigChange(DEACTIVATE_WSI, value)} - /> - + {!workaroundsCollapsed && ( + <> + + 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(DEACTIVATE_WSI, value)} + /> + + + )} ); } -- cgit v1.2.3