]> git.lizzy.rs Git - micro.git/blobdiff - internal/info/infobuffer.go
Allow aborting while opening a file with backup
[micro.git] / internal / info / infobuffer.go
index a3b4e368a6e6f14939fd2dee57ce0688454b05b7..e88701a4aa5674ef2cd84504c9986a86b2e49594 100644 (file)
@@ -54,7 +54,7 @@ func (i *InfoBuf) Close() {
 func (i *InfoBuf) Message(msg ...interface{}) {
        // only display a new message if there isn't an active prompt
        // this is to prevent overwriting an existing prompt to the user
-       if i.HasPrompt == false {
+       if !i.HasPrompt {
                displayMessage := fmt.Sprint(msg...)
                // if there is no active prompt then style and display the message as normal
                i.Msg = displayMessage
@@ -78,7 +78,7 @@ func (i *InfoBuf) ClearGutter() {
 func (i *InfoBuf) Error(msg ...interface{}) {
        // only display a new message if there isn't an active prompt
        // this is to prevent overwriting an existing prompt to the user
-       if i.HasPrompt == false {
+       if !i.HasPrompt {
                // if there is no active prompt then style and display the message as normal
                i.Msg = fmt.Sprint(msg...)
                i.HasMessage, i.HasError = false, true
@@ -137,11 +137,13 @@ func (i *InfoBuf) DonePrompt(canceled bool) {
        if !hadYN {
                if i.PromptCallback != nil {
                        if canceled {
+                               i.Replace(i.Start(), i.End(), "")
                                i.PromptCallback("", true)
                                h := i.History[i.PromptType]
                                i.History[i.PromptType] = h[:len(h)-1]
                        } else {
                                resp := string(i.LineBytes(0))
+                               i.Replace(i.Start(), i.End(), "")
                                i.PromptCallback(resp, false)
                                h := i.History[i.PromptType]
                                h[len(h)-1] = resp
@@ -156,7 +158,6 @@ func (i *InfoBuf) DonePrompt(canceled bool) {
                        }
                        // i.PromptCallback = nil
                }
-               i.Replace(i.Start(), i.End(), "")
        }
        if i.YNCallback != nil && hadYN {
                i.YNCallback(i.YNResp, canceled)