diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/api/lsfgApi.ts | 4 | ||||
| -rw-r--r-- | src/components/ConfigurationSection.tsx | 34 | ||||
| -rw-r--r-- | src/config/configSchema.ts | 16 |
3 files changed, 52 insertions, 2 deletions
diff --git a/src/api/lsfgApi.ts b/src/api/lsfgApi.ts index 5d866ef..5770c43 100644 --- a/src/api/lsfgApi.ts +++ b/src/api/lsfgApi.ts @@ -83,14 +83,14 @@ export const getLaunchOption = callable<[], LaunchOptionResult>("get_launch_opti // Updated config function using centralized configuration export const updateLsfgConfig = callable< - [boolean, string, number, number, boolean, boolean, string, number], + [boolean, string, number, number, boolean, boolean, string, number, boolean, boolean], ConfigUpdateResult >("update_lsfg_config"); // Helper function to create config update from configuration object export const updateLsfgConfigFromObject = async (config: ConfigurationData): Promise<ConfigUpdateResult> => { const args = ConfigurationManager.createArgsFromConfig(config); - return updateLsfgConfig(...args as [boolean, string, number, number, boolean, boolean, string, number]); + return updateLsfgConfig(...args as [boolean, string, number, number, boolean, boolean, string, number, boolean, boolean]); }; // Self-updater API functions diff --git a/src/components/ConfigurationSection.tsx b/src/components/ConfigurationSection.tsx index dc8da89..1748839 100644 --- a/src/components/ConfigurationSection.tsx +++ b/src/components/ConfigurationSection.tsx @@ -106,6 +106,40 @@ export function ConfigurationSection({ color: "white" }} > + Environment Variables + </div> + </PanelSectionRow> + + <PanelSectionRow> + <ToggleField + label="Enable WOW64 for 32-bit games" + description="Enables PROTON_USE_WOW64=1 for 32-bit games (use with ProtonGE to fix crashing)" + checked={config.enable_wow64} + onChange={(value) => onConfigChange('enable_wow64', value)} + /> + </PanelSectionRow> + + <PanelSectionRow> + <ToggleField + label="Disable Steam Deck Mode" + description="Disables Steam Deck mode (unlocks hidden settings in some games)" + checked={config.disable_steamdeck_mode} + onChange={(value) => onConfigChange('disable_steamdeck_mode', value)} + /> + </PanelSectionRow> + + <PanelSectionRow> + <div + style={{ + fontSize: "14px", + fontWeight: "bold", + marginTop: "16px", + marginBottom: "8px", + borderBottom: "1px solid rgba(255, 255, 255, 0.2)", + paddingBottom: "4px", + color: "white" + }} + > Experimental Features </div> </PanelSectionRow> diff --git a/src/config/configSchema.ts b/src/config/configSchema.ts index 9b6fc41..8715057 100644 --- a/src/config/configSchema.ts +++ b/src/config/configSchema.ts @@ -77,6 +77,20 @@ export const CONFIG_SCHEMA: Record<string, ConfigField> = { fieldType: ConfigFieldType.INTEGER, default: 0, description: "experimental: base framerate cap for dxvk games, before frame multiplier (0 = disabled)" + }, + + enable_wow64: { + name: "enable_wow64", + fieldType: ConfigFieldType.BOOLEAN, + default: false, + description: "enable PROTON_USE_WOW64=1 for 32-bit games (use with ProtonGE to fix crashing)" + }, + + disable_steamdeck_mode: { + name: "disable_steamdeck_mode", + fieldType: ConfigFieldType.BOOLEAN, + default: false, + description: "disable Steam Deck mode (unlocks hidden settings in some games)" } }; @@ -90,6 +104,8 @@ export interface ConfigurationData { hdr_mode: boolean; experimental_present_mode: string; experimental_fps_limit: number; + enable_wow64: boolean; + disable_steamdeck_mode: boolean; } // Centralized configuration manager |
