Replaced bbolt-based database handling with Fyne built-in preferences for storing application settings. Deleted migration logic, database initialization, and error handling related to bbolt, simplifying the codebase and reducing external dependencies.
43 lines
1.1 KiB
Go
43 lines
1.1 KiB
Go
package handler
|
|
|
|
import (
|
|
"fyne.io/fyne/v2/lang"
|
|
"git.kor-elf.net/kor-elf/gui-for-ffmpeg/kernel"
|
|
"git.kor-elf.net/kor-elf/gui-for-ffmpeg/localizer"
|
|
)
|
|
|
|
type MainHandler struct {
|
|
app kernel.AppContract
|
|
convertorHandler ConvertorHandlerContract
|
|
menuHandler MenuHandlerContract
|
|
localizerRepository localizer.RepositoryContract
|
|
}
|
|
|
|
func NewMainHandler(
|
|
app kernel.AppContract,
|
|
convertorHandler ConvertorHandlerContract,
|
|
menuHandler MenuHandlerContract,
|
|
localizerRepository localizer.RepositoryContract,
|
|
) *MainHandler {
|
|
return &MainHandler{
|
|
app: app,
|
|
convertorHandler: convertorHandler,
|
|
menuHandler: menuHandler,
|
|
localizerRepository: localizerRepository,
|
|
}
|
|
}
|
|
|
|
func (h MainHandler) Start() {
|
|
language := h.localizerRepository.GetCode()
|
|
if len(language) == 0 {
|
|
err := h.app.GetLocalizerService().SetCurrentLanguageByCode(lang.SystemLocale().LanguageString())
|
|
if err != nil {
|
|
h.menuHandler.LanguageSelection()
|
|
return
|
|
}
|
|
}
|
|
_ = h.app.GetLocalizerService().SetCurrentLanguageByCode(language)
|
|
|
|
h.convertorHandler.MainConvertor()
|
|
}
|