Skip to content

Commit dbd8687

Browse files
committed
Extract methods suspend/resume on Gui struct
These suspend/resume the gocui layer and pause/unpause background refreshes.
1 parent 26d8cb3 commit dbd8687

File tree

1 file changed

+20
-5
lines changed

1 file changed

+20
-5
lines changed

pkg/gui/gui.go

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -899,21 +899,36 @@ func (gui *Gui) runSubprocessWithSuspenseAndRefresh(subprocess *oscommands.CmdOb
899899
return nil
900900
}
901901

902+
func (gui *Gui) suspend() error {
903+
if err := gui.g.Suspend(); err != nil {
904+
return err
905+
}
906+
907+
gui.BackgroundRoutineMgr.PauseBackgroundRefreshes(true)
908+
return nil
909+
}
910+
911+
func (gui *Gui) resume() error {
912+
if err := gui.g.Resume(); err != nil {
913+
return err
914+
}
915+
916+
gui.BackgroundRoutineMgr.PauseBackgroundRefreshes(false)
917+
return nil
918+
}
919+
902920
// returns whether command exited without error or not
903921
func (gui *Gui) runSubprocessWithSuspense(subprocess *oscommands.CmdObj) (bool, error) {
904922
gui.Mutexes.SubprocessMutex.Lock()
905923
defer gui.Mutexes.SubprocessMutex.Unlock()
906924

907-
if err := gui.g.Suspend(); err != nil {
925+
if err := gui.suspend(); err != nil {
908926
return false, err
909927
}
910928

911-
gui.BackgroundRoutineMgr.PauseBackgroundRefreshes(true)
912-
defer gui.BackgroundRoutineMgr.PauseBackgroundRefreshes(false)
913-
914929
cmdErr := gui.runSubprocess(subprocess)
915930

916-
if err := gui.g.Resume(); err != nil {
931+
if err := gui.resume(); err != nil {
917932
return false, err
918933
}
919934

0 commit comments

Comments
 (0)