mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-08-08 22:36:49 +02:00
Fix flicker when showing the status of a background fetch
This was recently introduced, but it was done the wrong way. WithWaitingStatusSync should only be called from the main thread, and it is meant to be used for updating the bottom line while the UI is blocked. It is a bad idea to call this from a background thread, and it results in ugly flicker (occasionally). Use the newly extracted WithWaitingStatusImpl instead, this is the same as WithWaitingStatus (which is exactly what we need) but without the implicit OnWorker, which we don't want because we are on a background thread already.
This commit is contained in:
@@ -76,9 +76,9 @@ func (self *BackgroundRoutineMgr) startBackgroundFetch() {
|
||||
self.gui.waitForIntro.Wait()
|
||||
|
||||
fetch := func() error {
|
||||
return self.gui.PopupHandler.WithWaitingStatusSync(self.gui.Tr.FetchingStatus, func() error {
|
||||
return self.gui.helpers.AppStatus.WithWaitingStatusImpl(self.gui.Tr.FetchingStatus, func(gocui.Task) error {
|
||||
return self.backgroundFetch()
|
||||
})
|
||||
}, nil)
|
||||
}
|
||||
|
||||
// We want an immediate fetch at startup, and since goEvery starts by
|
||||
|
Reference in New Issue
Block a user