diff options
| author | Paul Buetow <paul@buetow.org> | 2026-04-08 09:55:02 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-04-08 09:55:02 +0300 |
| commit | f486e9c677c72a409df8696104661847354286df (patch) | |
| tree | 8f1b9aef0a74d33a65f1f47f2bdf3c9705fc8474 /internal/gui/app.go | |
| parent | cd4265b8f87811db758c89bab5e62daa6c39337a (diff) | |
refactor: registry pattern for audio and image provider factories
Add internal/registry generic Registry[K,T] for keyed factory registration.
Wire audio.NewProvider via registered per-provider constructors; GUI and
processor newImageSearcher use registries of *Orchestrator/*Processor methods.
Export image.ImageProviderOpenAI and ImageProviderNanoBanana from search.go
and use them across gui to avoid duplicate string constants.
Made-with: Cursor
Diffstat (limited to 'internal/gui/app.go')
| -rw-r--r-- | internal/gui/app.go | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/internal/gui/app.go b/internal/gui/app.go index f7a7d51..6c1cf21 100644 --- a/internal/gui/app.go +++ b/internal/gui/app.go @@ -146,11 +146,6 @@ type Config struct { Translator *translation.Translator } -const ( - imageProviderOpenAI = "openai" - imageProviderNanoBanana = "nanobanana" -) - // DefaultConfig returns default GUI configuration func DefaultConfig() *Config { homeDir, err := appconfig.HomeDir() @@ -168,7 +163,7 @@ func DefaultConfig() *Config { NanoBananaModel: image.DefaultNanoBananaModel, NanoBananaTextModel: image.DefaultNanoBananaTextModel, GeminiTTSModel: audioDefaults.GeminiTTSModel, - ImageProvider: imageProviderNanoBanana, + ImageProvider: image.ImageProviderNanoBanana, TranslationProvider: translation.ProviderGemini, PhoneticProvider: phonetic.ProviderGemini, AutoPlay: true, // Auto-play enabled by default |
