Possibly improve resize logic perf

This commit is contained in:
makeworld 2022-04-25 20:34:04 -04:00
parent 946b3f5bc0
commit bc81281c84

View File

@ -82,23 +82,18 @@ func Init(version, commit, builtBy string) {
termH = height
// Make sure the current tab content is reformatted when the terminal size changes
go func(t *tab) {
reformatMu.Lock() // Only allow one reformat job at a time
for i := range tabs {
// Overwrite all tabs with a new, differently sized, left margin
browser.AddTab(
strconv.Itoa(i),
tabs[i].label(),
makeContentLayout(tabs[i].view, leftMargin()),
)
if tabs[i] == t {
// Reformat page ASAP, in the middle of loop
reformatPageAndSetView(t, t.page)
}
for i := range tabs {
// Overwrite all tabs with a new, differently sized, left margin
browser.AddTab(
strconv.Itoa(i),
tabs[i].label(),
makeContentLayout(tabs[i].view, leftMargin()),
)
if tabs[i] == tabs[curTab] {
// Reformat page ASAP, in the middle of loop
reformatPageAndSetView(tabs[curTab], tabs[curTab].page)
}
App.Draw()
reformatMu.Unlock()
}(tabs[curTab])
}
})
panels.AddPanel(PanelBrowser, browser, true, true)