mirror of
https://github.com/Xpl0itU/WiiUDownloader.git
synced 2025-05-28 22:16:04 -04:00
Fix crash on launch on macOS
This commit is contained in:
parent
9bb15fce53
commit
6943cd569e
3 changed files with 20 additions and 14 deletions
|
@ -7,6 +7,8 @@ import (
|
||||||
"runtime"
|
"runtime"
|
||||||
|
|
||||||
wiiudownloader "github.com/Xpl0itU/WiiUDownloader"
|
wiiudownloader "github.com/Xpl0itU/WiiUDownloader"
|
||||||
|
"github.com/gotk3/gotk3/glib"
|
||||||
|
"github.com/gotk3/gotk3/gtk"
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
|
@ -31,8 +33,18 @@ func main() {
|
||||||
os.Setenv("GSETTINGS_SCHEMA_DIR", filePath)
|
os.Setenv("GSETTINGS_SCHEMA_DIR", filePath)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
win := NewMainWindow(wiiudownloader.GetTitleEntries(wiiudownloader.TITLE_CATEGORY_GAME), logger)
|
gtk.Init(nil)
|
||||||
|
|
||||||
win.ShowAll()
|
app, err := gtk.ApplicationNew("io.github.xpl0itu.wiiudownloader", glib.APPLICATION_FLAGS_NONE)
|
||||||
Main()
|
if err != nil {
|
||||||
|
logger.Fatal(err.Error())
|
||||||
|
}
|
||||||
|
app.Connect("activate", func() {
|
||||||
|
win := NewMainWindow(app, wiiudownloader.GetTitleEntries(wiiudownloader.TITLE_CATEGORY_GAME), logger)
|
||||||
|
win.ShowAll()
|
||||||
|
app.AddWindow(win.window)
|
||||||
|
app.GetActiveWindow().Show()
|
||||||
|
})
|
||||||
|
app.Run(nil)
|
||||||
|
app.Quit()
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,7 +26,7 @@ const (
|
||||||
)
|
)
|
||||||
|
|
||||||
type MainWindow struct {
|
type MainWindow struct {
|
||||||
window *gtk.Window
|
window *gtk.ApplicationWindow
|
||||||
treeView *gtk.TreeView
|
treeView *gtk.TreeView
|
||||||
titles []wiiudownloader.TitleEntry
|
titles []wiiudownloader.TitleEntry
|
||||||
searchEntry *gtk.Entry
|
searchEntry *gtk.Entry
|
||||||
|
@ -41,16 +41,14 @@ type MainWindow struct {
|
||||||
lastSearchText string
|
lastSearchText string
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewMainWindow(entries []wiiudownloader.TitleEntry, logger *wiiudownloader.Logger) *MainWindow {
|
func NewMainWindow(app *gtk.Application, entries []wiiudownloader.TitleEntry, logger *wiiudownloader.Logger) *MainWindow {
|
||||||
gtk.Init(nil)
|
|
||||||
|
|
||||||
gSettings, err := gtk.SettingsGetDefault()
|
gSettings, err := gtk.SettingsGetDefault()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error(err.Error())
|
logger.Error(err.Error())
|
||||||
}
|
}
|
||||||
gSettings.SetProperty("gtk-application-prefer-dark-theme", isDarkMode())
|
gSettings.SetProperty("gtk-application-prefer-dark-theme", isDarkMode())
|
||||||
|
|
||||||
win, err := gtk.WindowNew(gtk.WINDOW_TOPLEVEL)
|
win, err := gtk.ApplicationWindowNew(app)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Fatal("Unable to create window:", err)
|
logger.Fatal("Unable to create window:", err)
|
||||||
}
|
}
|
||||||
|
@ -425,7 +423,7 @@ func (mw *MainWindow) ShowAll() {
|
||||||
|
|
||||||
mw.window.Add(mainvBox)
|
mw.window.Add(mainvBox)
|
||||||
|
|
||||||
mw.window.ShowAll()
|
mainvBox.ShowAll()
|
||||||
}
|
}
|
||||||
|
|
||||||
func (mw *MainWindow) onRegionChange(button *gtk.CheckButton, region uint8) {
|
func (mw *MainWindow) onRegionChange(button *gtk.CheckButton, region uint8) {
|
||||||
|
@ -791,7 +789,3 @@ queueProcessingLoop:
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func Main() {
|
|
||||||
gtk.Main()
|
|
||||||
}
|
|
||||||
|
|
|
@ -33,7 +33,7 @@ type ProgressWindow struct {
|
||||||
cancelled bool
|
cancelled bool
|
||||||
}
|
}
|
||||||
|
|
||||||
func CreateProgressWindow(parent *gtk.Window) (ProgressWindow, error) {
|
func CreateProgressWindow(parent *gtk.ApplicationWindow) (ProgressWindow, error) {
|
||||||
win, err := gtk.WindowNew(gtk.WINDOW_TOPLEVEL)
|
win, err := gtk.WindowNew(gtk.WINDOW_TOPLEVEL)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return ProgressWindow{}, err
|
return ProgressWindow{}, err
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue