summaryrefslogtreecommitdiff
path: root/src/components/Content.tsx
diff options
context:
space:
mode:
authorxXJSONDeruloXx <danielhimebauch@gmail.com>2025-07-16 13:54:09 -0400
committerxXJSONDeruloXx <danielhimebauch@gmail.com>2025-07-16 13:54:09 -0400
commit7868396718b13443209e7c5d83a2c96cd7eee31e (patch)
tree96e8e172c4484caecca591174a3dea2e5d8da363 /src/components/Content.tsx
parent41bba67d24241dea18b056734b153270bb230ba1 (diff)
downloaddecky-lsfg-vk-7868396718b13443209e7c5d83a2c96cd7eee31e.tar.gz
decky-lsfg-vk-7868396718b13443209e7c5d83a2c96cd7eee31e.zip
centralized configuration system for lsfg-vk params
Diffstat (limited to 'src/components/Content.tsx')
-rw-r--r--src/components/Content.tsx55
1 files changed, 6 insertions, 49 deletions
diff --git a/src/components/Content.tsx b/src/components/Content.tsx
index 895b2fc..ba651d4 100644
--- a/src/components/Content.tsx
+++ b/src/components/Content.tsx
@@ -8,6 +8,7 @@ import { ConfigurationSection } from "./ConfigurationSection";
import { UsageInstructions } from "./UsageInstructions";
import { WikiButton } from "./WikiButton";
import { ClipboardButton } from "./ClipboardButton";
+import { ConfigurationData } from "../config/configSchema";
export function Content() {
const {
@@ -21,9 +22,8 @@ export function Content() {
const {
config,
- setters,
loadLsfgConfig,
- updateConfig
+ updateField
} = useLsfgConfig();
const { isInstalling, isUninstalling, handleInstall, handleUninstall } = useInstallationActions();
@@ -35,45 +35,9 @@ export function Content() {
}
}, [isInstalled, loadLsfgConfig]);
- // Configuration change handlers
- const handleEnableLsfgChange = async (value: boolean) => {
- setters.setEnableLsfg(value);
- await updateConfig(value, config.multiplier, config.flowScale, config.hdr, config.perfMode, config.immediateMode, config.disableVkbasalt, config.frameCap);
- };
-
- const handleMultiplierChange = async (value: number) => {
- setters.setMultiplier(value);
- await updateConfig(config.enableLsfg, value, config.flowScale, config.hdr, config.perfMode, config.immediateMode, config.disableVkbasalt, config.frameCap);
- };
-
- const handleFlowScaleChange = async (value: number) => {
- setters.setFlowScale(value);
- await updateConfig(config.enableLsfg, config.multiplier, value, config.hdr, config.perfMode, config.immediateMode, config.disableVkbasalt, config.frameCap);
- };
-
- const handleHdrChange = async (value: boolean) => {
- setters.setHdr(value);
- await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, value, config.perfMode, config.immediateMode, config.disableVkbasalt, config.frameCap);
- };
-
- const handlePerfModeChange = async (value: boolean) => {
- setters.setPerfMode(value);
- await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, config.hdr, value, config.immediateMode, config.disableVkbasalt, config.frameCap);
- };
-
- const handleImmediateModeChange = async (value: boolean) => {
- setters.setImmediateMode(value);
- await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, config.hdr, config.perfMode, value, config.disableVkbasalt, config.frameCap);
- };
-
- const handleDisableVkbasaltChange = async (value: boolean) => {
- setters.setDisableVkbasalt(value);
- await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, config.hdr, config.perfMode, config.immediateMode, value, config.frameCap);
- };
-
- const handleFrameCapChange = async (value: number) => {
- setters.setFrameCap(value);
- await updateConfig(config.enableLsfg, config.multiplier, config.flowScale, config.hdr, config.perfMode, config.immediateMode, config.disableVkbasalt, value);
+ // Generic configuration change handler
+ const handleConfigChange = async (fieldName: keyof ConfigurationData, value: boolean | number) => {
+ await updateField(fieldName, value);
};
const onInstall = () => {
@@ -105,14 +69,7 @@ export function Content() {
{isInstalled && (
<ConfigurationSection
config={config}
- onEnableLsfgChange={handleEnableLsfgChange}
- onMultiplierChange={handleMultiplierChange}
- onFlowScaleChange={handleFlowScaleChange}
- onHdrChange={handleHdrChange}
- onPerfModeChange={handlePerfModeChange}
- onImmediateModeChange={handleImmediateModeChange}
- onDisableVkbasaltChange={handleDisableVkbasaltChange}
- onFrameCapChange={handleFrameCapChange}
+ onConfigChange={handleConfigChange}
/>
)}