diff options
19 files changed, 47 insertions, 0 deletions
diff --git a/pkg/gui/confirmation_panel.go b/pkg/gui/confirmation_panel.go index 0537f1b45..b092b1d10 100644 --- a/pkg/gui/confirmation_panel.go +++ b/pkg/gui/confirmation_panel.go @@ -327,5 +327,9 @@ func (gui *Gui) surfaceError(err error) error { return nil } + if err == gocui.ErrQuit { + return err + } + return gui.createErrorPanel(err.Error()) } diff --git a/test/integration/confirmQuit/config/config.yml b/test/integration/confirmQuit/config/config.yml new file mode 100644 index 000000000..7227c0b5d --- /dev/null +++ b/test/integration/confirmQuit/config/config.yml @@ -0,0 +1,2 @@ +disableStartupPopups: true +confirmOnQuit: true diff --git a/test/integration/confirmQuit/expected/.git_keep/COMMIT_EDITMSG b/test/integration/confirmQuit/expected/.git_keep/COMMIT_EDITMSG new file mode 100644 index 000000000..3829ab872 --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/COMMIT_EDITMSG @@ -0,0 +1 @@ +myfile1 diff --git a/test/integration/confirmQuit/expected/.git_keep/FETCH_HEAD b/test/integration/confirmQuit/expected/.git_keep/FETCH_HEAD new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/FETCH_HEAD diff --git a/test/integration/confirmQuit/expected/.git_keep/HEAD b/test/integration/confirmQuit/expected/.git_keep/HEAD new file mode 100644 index 000000000..cb089cd89 --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/HEAD @@ -0,0 +1 @@ +ref: refs/heads/master diff --git a/test/integration/confirmQuit/expected/.git_keep/config b/test/integration/confirmQuit/expected/.git_keep/config new file mode 100644 index 000000000..8ae104545 --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/config @@ -0,0 +1,10 @@ +[core] + repositoryformatversion = 0 + filemode = true + bare = false + logallrefupdates = true + ignorecase = true + precomposeunicode = true +[user] + email = CI@example.com + name = CI diff --git a/test/integration/confirmQuit/expected/.git_keep/description b/test/integration/confirmQuit/expected/.git_keep/description new file mode 100644 index 000000000..498b267a8 --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/description @@ -0,0 +1 @@ +Unnamed repository; edit this file 'description' to name the repository. diff --git a/test/integration/confirmQuit/expected/.git_keep/index b/test/integration/confirmQuit/expected/.git_keep/index Binary files differnew file mode 100644 index 000000000..e70e72626 --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/index diff --git a/test/integration/confirmQuit/expected/.git_keep/info/exclude b/test/integration/confirmQuit/expected/.git_keep/info/exclude new file mode 100644 index 000000000..8e9f2071f --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/info/exclude @@ -0,0 +1,7 @@ +# git ls-files --others --exclude-from=.git/info/exclude +# Lines that start with '#' are comments. +# For a project mostly in C, the following would be a good set of +# exclude patterns (uncomment them if you want to use them): +# *.[oa] +# *~ +.DS_Store diff --git a/test/integration/confirmQuit/expected/.git_keep/logs/HEAD b/test/integration/confirmQuit/expected/.git_keep/logs/HEAD new file mode 100644 index 000000000..d1743395b --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/logs/HEAD @@ -0,0 +1 @@ +0000000000000000000000000000000000000000 544efed4e669ec3bd64b44799175bffac95035f5 CI <CI@example.com> 1642239015 +1100 commit (initial): myfile1 diff --git a/test/integration/confirmQuit/expected/.git_keep/logs/refs/heads/master b/test/integration/confirmQuit/expected/.git_keep/logs/refs/heads/master new file mode 100644 index 000000000..d1743395b --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/logs/refs/heads/master @@ -0,0 +1 @@ +0000000000000000000000000000000000000000 544efed4e669ec3bd64b44799175bffac95035f5 CI <CI@example.com> 1642239015 +1100 commit (initial): myfile1 diff --git a/test/integration/confirmQuit/expected/.git_keep/objects/0e/6cf0a6b79e8d44e186d812a1f74b43d64fac52 b/test/integration/confirmQuit/expected/.git_keep/objects/0e/6cf0a6b79e8d44e186d812a1f74b43d64fac52 Binary files differnew file mode 100644 index 000000000..7f2ebf4ee --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/objects/0e/6cf0a6b79e8d44e186d812a1f74b43d64fac52 diff --git a/test/integration/confirmQuit/expected/.git_keep/objects/54/4efed4e669ec3bd64b44799175bffac95035f5 b/test/integration/confirmQuit/expected/.git_keep/objects/54/4efed4e669ec3bd64b44799175bffac95035f5 Binary files differnew file mode 100644 index 000000000..0b96ac6d5 --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/objects/54/4efed4e669ec3bd64b44799175bffac95035f5 diff --git a/test/integration/confirmQuit/expected/.git_keep/objects/a5/bce3fd2565d8f458555a0c6f42d0504a848bd5 b/test/integration/confirmQuit/expected/.git_keep/objects/a5/bce3fd2565d8f458555a0c6f42d0504a848bd5 Binary files differnew file mode 100644 index 000000000..285df3e5f --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/objects/a5/bce3fd2565d8f458555a0c6f42d0504a848bd5 diff --git a/test/integration/confirmQuit/expected/.git_keep/refs/heads/master b/test/integration/confirmQuit/expected/.git_keep/refs/heads/master new file mode 100644 index 000000000..c8e696e5a --- /dev/null +++ b/test/integration/confirmQuit/expected/.git_keep/refs/heads/master @@ -0,0 +1 @@ +544efed4e669ec3bd64b44799175bffac95035f5 diff --git a/test/integration/confirmQuit/expected/myfile1 b/test/integration/confirmQuit/expected/myfile1 new file mode 100644 index 000000000..a5bce3fd2 --- /dev/null +++ b/test/integration/confirmQuit/expected/myfile1 @@ -0,0 +1 @@ +test1 diff --git a/test/integration/confirmQuit/recording.json b/test/integration/confirmQuit/recording.json new file mode 100644 index 000000000..fea04afb7 --- /dev/null +++ b/test/integration/confirmQuit/recording.json @@ -0,0 +1 @@ +{"KeyEvents":[{"Timestamp":466,"Mod":0,"Key":256,"Ch":113},{"Timestamp":890,"Mod":0,"Key":13,"Ch":13}],"ResizeEvents":[{"Timestamp":0,"Width":272,"Height":74}]}
\ No newline at end of file diff --git a/test/integration/confirmQuit/setup.sh b/test/integration/confirmQuit/setup.sh new file mode 100644 index 000000000..e58c74f38 --- /dev/null +++ b/test/integration/confirmQuit/setup.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +cd $1 + +git init + +git config user.email "CI@example.com" +git config user.name "CI" + +echo test1 > myfile1 +git add . +git commit -am "myfile1" diff --git a/test/integration/confirmQuit/test.json b/test/integration/confirmQuit/test.json new file mode 100644 index 000000000..0386cab89 --- /dev/null +++ b/test/integration/confirmQuit/test.json @@ -0,0 +1,4 @@ +{ + "description": "quit with a confirm", + "speed": 20 +} |