Commit b06d78d9 authored by Roman Alifanov's avatar Roman Alifanov

fix ui freeze

parent 40bc9bed
......@@ -10,6 +10,7 @@ import (
_ "embed"
"github.com/diamondburned/gotk4-adwaita/pkg/adw"
"github.com/diamondburned/gotk4/pkg/glib/v2"
"github.com/diamondburned/gotk4/pkg/gtk/v4"
)
......@@ -79,7 +80,6 @@ func NewUpdateRow(name string, info apm.PackageChanges, runUpgradeCallback func(
}
pkgsWithInfo := make(map[string]apm.InfoResponse)
var mu sync.Mutex
var wg sync.WaitGroup
......@@ -87,8 +87,8 @@ func NewUpdateRow(name string, info apm.PackageChanges, runUpgradeCallback func(
for _, p := range pkgs {
wg.Add(1)
go func(pkg string) {
pkg := p
go func() {
defer wg.Done()
sem <- struct{}{}
......@@ -99,11 +99,13 @@ func NewUpdateRow(name string, info apm.PackageChanges, runUpgradeCallback func(
mu.Lock()
pkgsWithInfo[pkg] = info
mu.Unlock()
}(p)
}()
}
go func(title string) {
wg.Wait()
glib.IdleAdd(func() {
row := adw.NewActionRow()
row.SetTitle(title)
row.SetActivatable(true)
......@@ -118,7 +120,10 @@ func NewUpdateRow(name string, info apm.PackageChanges, runUpgradeCallback func(
ar := NewPackageRow(p, info.PackageInfo)
page.listbox.Append(ar)
}
upage.listbox.Append(row)
})
}(title)
}
return urow
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment