Skip to content

Persist Settings Across Sessions#90

Merged
takempf merged 3 commits intomasterfrom
presist-settings
Mar 13, 2026
Merged

Persist Settings Across Sessions#90
takempf merged 3 commits intomasterfrom
presist-settings

Conversation

@takempf
Copy link
Copy Markdown
Owner

@takempf takempf commented Mar 9, 2026

Saves the user's width, FPS, and quality settings so they're restored on next use.

Changes:

Web (LocalStorageAdapter)

Replaces the in-memory InMemoryStorageAdapter with a localStorage-backed implementation. Settings are keyed as gifit_config_* and default to original values (420px, 10fps, quality 5) when absent.

Persistence trigger moved to generation

Settings are now saved when the user clicks "Generate" (in App.tsx) rather than on every input change. This reduces storage churn and only persists settings the user actually used.

configurationPanelStore cleanup:

Removed per-input setWidth/setFps/setQuality calls. handleVideoLoadedData now caps the stored width to the video's native width to avoid upscaling.

Extension: No functional change — the extension already used extensionStorage for persistence; just cleaned up a stale comment in extension.ts.

Tests updated to reflect the new persistence model and corrected mock adapter shape.

@takempf takempf mentioned this pull request Mar 9, 2026
@takempf
Copy link
Copy Markdown
Owner Author

takempf commented Mar 13, 2026

#91

@takempf
Copy link
Copy Markdown
Owner Author

takempf commented Mar 13, 2026

#88

@takempf takempf self-assigned this Mar 13, 2026
@takempf takempf merged commit 1044822 into master Mar 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant