diff options
| author | Paul Buetow <paul@buetow.org> | 2026-04-01 19:40:17 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-04-01 19:40:17 +0300 |
| commit | e264a38e0a92ba451c21e64af2abf2d7fb88f919 (patch) | |
| tree | 4714fc9c824637b365379103fe491455bf921748 /internal/processor/processor.go | |
| parent | 008d6308ecb767df7194aa944328c6ead6473ca5 (diff) | |
z9: fix GUI launch provider propagation
Diffstat (limited to 'internal/processor/processor.go')
| -rw-r--r-- | internal/processor/processor.go | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/internal/processor/processor.go b/internal/processor/processor.go index dd49c2b..935ce60 100644 --- a/internal/processor/processor.go +++ b/internal/processor/processor.go @@ -541,16 +541,7 @@ func (p *Processor) GenerateAnkiFile() (string, error) { // RunGUIMode launches the GUI application func (p *Processor) RunGUIMode() error { - // Create GUI configuration from command line flags and viper config - guiConfig := &gui.Config{ - AudioFormat: p.flags.AudioFormat, - ImageProvider: p.flags.ImageAPI, - OpenAIKey: cli.GetOpenAIKey(), - GoogleAPIKey: cli.GetGoogleAPIKey(), - TranslationProvider: translation.Provider(viper.GetString("translation.provider")), - PhoneticProvider: phonetic.Provider(viper.GetString("phonetic.provider")), - AutoPlay: !p.flags.NoAutoPlay, // Invert the flag (--no-auto-play disables auto-play) - } + guiConfig := p.guiConfigForRunMode() // Only set OutputDir if it was explicitly provided via flag // Check if the outputDir is different from the default @@ -569,6 +560,23 @@ func (p *Processor) RunGUIMode() error { return nil } +func (p *Processor) guiConfigForRunMode() *gui.Config { + imageProvider := p.flags.ImageAPI + if !p.flags.ImageAPISpecified { + imageProvider = gui.DefaultConfig().ImageProvider + } + + return &gui.Config{ + AudioFormat: p.flags.AudioFormat, + ImageProvider: imageProvider, + OpenAIKey: cli.GetOpenAIKey(), + GoogleAPIKey: cli.GetGoogleAPIKey(), + TranslationProvider: translation.Provider(viper.GetString("translation.provider")), + PhoneticProvider: phonetic.Provider(viper.GetString("phonetic.provider")), + AutoPlay: !p.flags.NoAutoPlay, // Invert the flag (--no-auto-play disables auto-play) + } +} + // Helper methods func (p *Processor) findOrCreateWordDirectory(word string) string { |
