1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-03-19 21:28:28 +02:00

Working popup

This commit is contained in:
mjarkk 2018-12-07 14:56:29 +01:00
parent ced81e11f0
commit 8f904ffd72
6 changed files with 43 additions and 9 deletions

View File

@ -34,7 +34,29 @@ func (gui *Gui) handleCreatePullRequestPress(g *gocui.Gui, v *gocui.View) error
}
func (gui *Gui) handleGitFetch(g *gocui.Gui, v *gocui.View) error {
return gui.fetch(g, v, true)
if err := gui.createMessagePanel(g, v, "", gui.Tr.SLocalize("FetchWait")); err != nil {
return err
}
go func() {
unamePassOpend, err := gui.fetch(g, v, true)
if err != nil {
errMessage := err.Error()
if errMessage == "exit status 128" {
errMessage = gui.Tr.SLocalize("PassUnameWrong")
}
_ = gui.createErrorPanel(g, errMessage)
}
if unamePassOpend {
_, _ = g.SetViewOnBottom("pushPassUname")
_ = g.DeleteView("pushPassUname")
}
if err == nil {
_ = gui.closeConfirmationPrompt(g)
_ = gui.refreshCommits(g)
_ = gui.refreshStatus(g)
}
}()
return nil
}
func (gui *Gui) handleForceCheckout(g *gocui.Gui, v *gocui.View) error {

View File

@ -115,7 +115,7 @@ func (gui *Gui) handlePushClose(g *gocui.Gui, v *gocui.View) error {
if err != nil {
return err
}
gui.credentials <- ""
gui.credentials <- "-"
return gui.switchFocus(g, v, gui.getFilesView(g))
}

View File

@ -371,8 +371,10 @@ func (gui *Gui) promptAnonymousReporting() error {
})
}
func (gui *Gui) fetch(g *gocui.Gui, v *gocui.View, canSskForCredentials bool) error {
err := gui.GitCommand.Fetch(func(passOrUname string) string {
func (gui *Gui) fetch(g *gocui.Gui, v *gocui.View, canSskForCredentials bool) (unamePassOpend bool, err error) {
unamePassOpend = false
err = gui.GitCommand.Fetch(func(passOrUname string) string {
unamePassOpend = true
return gui.waitForPassUname(gui.g, v, passOrUname)
}, canSskForCredentials)
@ -386,7 +388,7 @@ func (gui *Gui) fetch(g *gocui.Gui, v *gocui.View, canSskForCredentials bool) er
}
gui.refreshStatus(g)
return err
return unamePassOpend, err
}
func (gui *Gui) updateLoader(g *gocui.Gui) error {
@ -442,12 +444,13 @@ func (gui *Gui) Run() error {
}
go func() {
err := gui.fetch(g, g.CurrentView(), false)
_, err := gui.fetch(g, g.CurrentView(), false)
if err != nil && strings.Contains(err.Error(), "exit status 128") && gui.canShowIsPrivateRepo() {
_ = gui.createConfirmationPanel(g, g.CurrentView(), gui.Tr.SLocalize("NoAutomaticGitFetchTitle"), gui.Tr.SLocalize("NoAutomaticGitFetchBody"), nil, nil)
} else {
gui.goEvery(g, time.Second*60, func(g *gocui.Gui) error {
return gui.fetch(g, g.CurrentView(), false)
_, err := gui.fetch(g, g.CurrentView(), false)
return err
})
}
}()

View File

@ -138,10 +138,13 @@ func addDutch(i18nObject *i18n.Bundle) error {
Other: "Dit is geen bestand",
}, &i18n.Message{
ID: "PullWait",
Other: "Pulling...",
Other: "Pullen...",
}, &i18n.Message{
ID: "PushWait",
Other: "Pushing...",
Other: "Pushen...",
}, &i18n.Message{
ID: "FetchWait",
Other: "Fetchen...",
}, &i18n.Message{
ID: "FileNoMergeCons",
Other: "Dit bestand heeft geen merge conflicten",

View File

@ -150,6 +150,9 @@ func addEnglish(i18nObject *i18n.Bundle) error {
}, &i18n.Message{
ID: "PushWait",
Other: "Pushing...",
}, &i18n.Message{
ID: "FetchWait",
Other: "Fetching...",
}, &i18n.Message{
ID: "FileNoMergeCons",
Other: "This file has no merge conflicts",

View File

@ -131,6 +131,9 @@ func addPolish(i18nObject *i18n.Bundle) error {
}, &i18n.Message{
ID: "PushWait",
Other: "Wypychanie zmian...",
}, &i18n.Message{
ID: "FetchWait",
Other: "Fetching...",
}, &i18n.Message{
ID: "FileNoMergeCons",
Other: "Ten plik nie powoduje konfliktów scalania",