Skip to content

feat: plugin configuration API #183

@fuzzzerd

Description

@fuzzzerd

Plugins currently have no standard way to persist user-tunable settings. Each plugin that needs configuration would have to implement its own storage, dialog UI, and file format.

Goal

Let plugins declare what they need to persist, and let the host handle storage and UI.

  • Plugins describe configuration as a typed schema (string / multiline / bool / int / double / enum).
  • Host persists values as per-plugin JSON under %LocalAppData%/SharpFM/plugin-config/{id}.json.
  • Plugin Manager shows a Configure... button that opens a generated settings form; the button is disabled for plugins with an empty schema (zero impact when unused).
  • Values are pushed to the plugin via IPlugin.OnConfigChanged once after Initialize and again after every save.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions