summaryrefslogtreecommitdiffstats
path: root/pkg
diff options
context:
space:
mode:
authormjarkk <mkopenga@gmail.com>2018-12-07 14:56:29 +0100
committermjarkk <mkopenga@gmail.com>2018-12-07 14:56:29 +0100
commit8f904ffd720714fb315c69d1c44d6974842ab051 (patch)
tree7b1ee38a1c8483c5f894bc0353ed2a0ceb4f30d7 /pkg
parentced81e11f048a954b707996d78487e3a6cabd569 (diff)
Working popup
Diffstat (limited to 'pkg')
-rw-r--r--pkg/gui/branches_panel.go24
-rw-r--r--pkg/gui/commit_message_panel.go2
-rw-r--r--pkg/gui/gui.go13
-rw-r--r--pkg/i18n/dutch.go7
-rw-r--r--pkg/i18n/english.go3
-rw-r--r--pkg/i18n/polish.go3
6 files changed, 43 insertions, 9 deletions
diff --git a/pkg/gui/branches_panel.go b/pkg/gui/branches_panel.go
index 7d1ca5782..059f0af50 100644
--- a/pkg/gui/branches_panel.go
+++ b/pkg/gui/branches_panel.go
@@ -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 {
diff --git a/pkg/gui/commit_message_panel.go b/pkg/gui/commit_message_panel.go
index 560f64415..14e3ab795 100644
--- a/pkg/gui/commit_message_panel.go
+++ b/pkg/gui/commit_message_panel.go
@@ -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))
}
diff --git a/pkg/gui/gui.go b/pkg/gui/gui.go
index e3d80df12..0004abf1b 100644
--- a/pkg/gui/gui.go
+++ b/pkg/gui/gui.go
@@ -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
})
}
}()
diff --git a/pkg/i18n/dutch.go b/pkg/i18n/dutch.go
index a29c8c8c0..f62b60b90 100644
--- a/pkg/i18n/dutch.go
+++ b/pkg/i18n/dutch.go
@@ -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",
diff --git a/pkg/i18n/english.go b/pkg/i18n/english.go
index 872e9783e..451b7bc0e 100644
--- a/pkg/i18n/english.go
+++ b/pkg/i18n/english.go
@@ -151,6 +151,9 @@ func addEnglish(i18nObject *i18n.Bundle) error {
ID: "PushWait",
Other: "Pushing...",
}, &i18n.Message{
+ ID: "FetchWait",
+ Other: "Fetching...",
+ }, &i18n.Message{
ID: "FileNoMergeCons",
Other: "This file has no merge conflicts",
}, &i18n.Message{
diff --git a/pkg/i18n/polish.go b/pkg/i18n/polish.go
index 3ffa980ae..8470045e0 100644
--- a/pkg/i18n/polish.go
+++ b/pkg/i18n/polish.go
@@ -132,6 +132,9 @@ func addPolish(i18nObject *i18n.Bundle) error {
ID: "PushWait",
Other: "Wypychanie zmian...",
}, &i18n.Message{
+ ID: "FetchWait",
+ Other: "Fetching...",
+ }, &i18n.Message{
ID: "FileNoMergeCons",
Other: "Ten plik nie powoduje konfliktów scalania",
}, &i18n.Message{