diff options
| author | xXJSONDeruloXx <danielhimebauch@gmail.com> | 2025-07-15 13:11:06 -0400 |
|---|---|---|
| committer | xXJSONDeruloXx <danielhimebauch@gmail.com> | 2025-07-15 13:11:06 -0400 |
| commit | ec4541dd78f4e2a58b679b20740f323d8ce76698 (patch) | |
| tree | e86b7bbafc74c68683617904bf77092fc6361c05 /src/components | |
| parent | 192c6ece06e1a400ca3a559f47001324150a96ea (diff) | |
| download | decky-lsfg-vk-ec4541dd78f4e2a58b679b20740f323d8ce76698.tar.gz decky-lsfg-vk-ec4541dd78f4e2a58b679b20740f323d8ce76698.zip | |
add disable_vkbasalt=1 defaulted, hidden ui to expose to users later if desired
Diffstat (limited to 'src/components')
| -rw-r--r-- | src/components/ConfigurationSection.tsx | 14 | ||||
| -rw-r--r-- | src/components/Content.tsx | 18 | ||||
| -rw-r--r-- | src/components/UsageInstructions.tsx | 5 |
3 files changed, 30 insertions, 7 deletions
diff --git a/src/components/ConfigurationSection.tsx b/src/components/ConfigurationSection.tsx index ee18e5b..34955f8 100644 --- a/src/components/ConfigurationSection.tsx +++ b/src/components/ConfigurationSection.tsx @@ -7,6 +7,7 @@ interface LsfgConfig { hdr: boolean; perfMode: boolean; immediateMode: boolean; + disableVkbasalt: boolean; } interface ConfigurationSectionProps { @@ -17,6 +18,7 @@ interface ConfigurationSectionProps { onHdrChange: (value: boolean) => Promise<void>; onPerfModeChange: (value: boolean) => Promise<void>; onImmediateModeChange: (value: boolean) => Promise<void>; + onDisableVkbasaltChange: (value: boolean) => Promise<void>; } export function ConfigurationSection({ @@ -26,7 +28,8 @@ export function ConfigurationSection({ onFlowScaleChange, onHdrChange, onPerfModeChange, - onImmediateModeChange + onImmediateModeChange, + onDisableVkbasaltChange }: ConfigurationSectionProps) { return ( <> @@ -110,6 +113,15 @@ export function ConfigurationSection({ onChange={onImmediateModeChange} /> </PanelSectionRow> + + {/* <PanelSectionRow> + <ToggleField + label="Disable vkbasalt" + description="Some plugins add vkbasalt layer, which can break lsfg. Toggling on fixes this" + checked={config.disableVkbasalt} + onChange={onDisableVkbasaltChange} + /> + </PanelSectionRow> */} </> ); } diff --git a/src/components/Content.tsx b/src/components/Content.tsx index 0e17f3c..16c8f2f 100644 --- a/src/components/Content.tsx +++ b/src/components/Content.tsx @@ -36,32 +36,37 @@ export function Content() { // Configuration change handlers const handleEnableLsfgChange = async (value: boolean) => { setters.setEnableLsfg(value); - await updateConfig(value, config.multiplier, config.flowScale, config.hdr, config.perfMode, config.immediateMode); + await updateConfig(value, config.multiplier, config.flowScale, config.hdr, config.perfMode, config.immediateMode, config.disableVkbasalt); }; const handleMultiplierChange = async (value: number) => { setters.setMultiplier(value); - await updateConfig(config.enableLsfg, value, config.flowScale, config.hdr, config.perfMode, config.immediateMode); + await updateConfig(config.enableLsfg, value, config.flowScale, config.hdr, config.perfMode, config.immediateMode, config.disableVkbasalt); }; const handleFlowScaleChange = async (value: number) => { setters.setFlowScale(value); - await updateConfig(config.enableLsfg, config.multiplier, value, config.hdr, config.perfMode, config.immediateMode); + await updateConfig(config.enableLsfg, config.multiplier, value, config.hdr, config.perfMode, config.immediateMode, config.disableVkbasalt); }; const handleHdrChange = async (value: boolean) => { setters.setHdr(value); - await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, value, config.perfMode, config.immediateMode); + await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, value, config.perfMode, config.immediateMode, config.disableVkbasalt); }; const handlePerfModeChange = async (value: boolean) => { setters.setPerfMode(value); - await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, config.hdr, value, config.immediateMode); + await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, config.hdr, value, config.immediateMode, config.disableVkbasalt); }; const handleImmediateModeChange = async (value: boolean) => { setters.setImmediateMode(value); - await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, config.hdr, config.perfMode, value); + await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, config.hdr, config.perfMode, value, config.disableVkbasalt); + }; + + const handleDisableVkbasaltChange = async (value: boolean) => { + setters.setDisableVkbasalt(value); + await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, config.hdr, config.perfMode, config.immediateMode, value); }; const onInstall = () => { @@ -99,6 +104,7 @@ export function Content() { onHdrChange={handleHdrChange} onPerfModeChange={handlePerfModeChange} onImmediateModeChange={handleImmediateModeChange} + onDisableVkbasaltChange={handleDisableVkbasaltChange} /> )} diff --git a/src/components/UsageInstructions.tsx b/src/components/UsageInstructions.tsx index a826d3d..ca9ddd2 100644 --- a/src/components/UsageInstructions.tsx +++ b/src/components/UsageInstructions.tsx @@ -8,6 +8,7 @@ interface ConfigType { hdr: boolean; perfMode: boolean; immediateMode: boolean; + disableVkbasalt: boolean; } interface UsageInstructionsProps { @@ -41,6 +42,10 @@ export function UsageInstructions({ config }: UsageInstructionsProps) { envVars.push("MESA_VK_WSI_PRESENT_MODE=immediate"); } + if (config.disableVkbasalt) { + envVars.push("DISABLE_VKBASALT=1"); + } + return envVars.length > 0 ? `${envVars.join(" ")} %command%` : "%command%"; }; |
