Skip to content

feat: persist file finder filter toggles in settings.json#119

Merged
neumie merged 1 commit intomainfrom
feat/persist-file-finder-filters
May 6, 2026
Merged

feat: persist file finder filter toggles in settings.json#119
neumie merged 1 commit intomainfrom
feat/persist-file-finder-filters

Conversation

@neumie
Copy link
Copy Markdown
Contributor

@neumie neumie commented May 5, 2026

Summary

  • File finder filters (show_ignored / show_hidden) used to live in an in-memory FileSearchMemory global, so they reset on every app restart.
  • Move them into AppSettings.file_finder (new struct) so they persist across restarts and act as the global default for future opens — a single mechanism covers both "remember my setting" and "make this my default."
  • Dialog now takes initial values via params and emits FiltersChanged on toggle. Overlay manager subscribes and writes back through SettingsState, riding the existing 300ms debounced save.
  • FileSearchMemory keeps only session-scoped state (query + selected_index).

Test plan

  • Open file finder, toggle "Include ignored" / "Include hidden", close, reopen — filters in same state.
  • Restart the app, reopen file finder — filters persist.
  • Inspect ~/Library/Application Support/okena/settings.jsonfile_finder.show_ignored / file_finder.show_hidden reflect last toggle.
  • Existing settings.json without file_finder key loads cleanly (defaults to false via #[serde(default)]).

🤖 Generated with Claude Code

@neumie neumie changed the title feat: persist file finder filter toggles in settings.json feat: persist file finder filters + fix md viewer long-line overflow May 5, 2026
@neumie neumie force-pushed the feat/persist-file-finder-filters branch from 05be73a to 094e50d Compare May 6, 2026 12:27
@neumie neumie changed the title feat: persist file finder filters + fix md viewer long-line overflow feat: persist file finder filter toggles in settings.json May 6, 2026
Move show_ignored/show_hidden out of the in-memory FileSearchMemory
global into AppSettings.file_finder so they survive app restarts and
act as a persisted default for future opens. Toggling a filter emits
FiltersChanged; the overlay manager writes it back through
SettingsState (debounced to disk). Query and selected_index stay
session-only.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@neumie neumie force-pushed the feat/persist-file-finder-filters branch from 094e50d to 5e8c77e Compare May 6, 2026 12:32
@neumie neumie merged commit 09031c7 into main May 6, 2026
8 checks passed
@neumie neumie deleted the feat/persist-file-finder-filters branch May 6, 2026 12:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant