make OnServerConnectedTasks async to ensure What's New dialog shows

This commit is contained in:
Drew Weymouth
2024-04-21 09:17:04 -07:00
parent d6ab56765d
commit b49ab2cad1
+3 -1
View File
@@ -5,6 +5,7 @@ import (
"log" "log"
"math" "math"
"strings" "strings"
"time"
"github.com/20after4/configdir" "github.com/20after4/configdir"
"github.com/dweymouth/supersonic/backend" "github.com/dweymouth/supersonic/backend"
@@ -102,7 +103,7 @@ func NewMainWindow(fyneApp fyne.App, appName, displayAppName, appVersion string,
} }
}) })
app.ServerManager.OnServerConnected(func() { app.ServerManager.OnServerConnected(func() {
m.RunOnServerConnectedTasks(app, displayAppName) go m.RunOnServerConnectedTasks(app, displayAppName)
}) })
app.ServerManager.OnLogout(func() { app.ServerManager.OnLogout(func() {
m.BrowsingPane.DisableNavigationButtons() m.BrowsingPane.DisableNavigationButtons()
@@ -145,6 +146,7 @@ func (m *MainWindow) StartupPage() controller.Route {
} }
func (m *MainWindow) RunOnServerConnectedTasks(app *backend.App, displayAppName string) { func (m *MainWindow) RunOnServerConnectedTasks(app *backend.App, displayAppName string) {
time.Sleep(1 * time.Millisecond) // ensure this runs after sync tasks
m.BrowsingPane.EnableNavigationButtons() m.BrowsingPane.EnableNavigationButtons()
m.Router.NavigateTo(m.StartupPage()) m.Router.NavigateTo(m.StartupPage())
_, canRate := m.App.ServerManager.Server.(mediaprovider.SupportsRating) _, canRate := m.App.ServerManager.Server.(mediaprovider.SupportsRating)