summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJunegunn Choi <junegunn.c@gmail.com>2019-12-07 14:44:24 +0900
committerJunegunn Choi <junegunn.c@gmail.com>2019-12-07 14:44:24 +0900
commitaf1a5f130bbd2464131ec2ae91c538ace6801a73 (patch)
tree29603019f0a61d0b212ec9220b4b54070f879c46 /src
parent86e3994e87b264f874ea1620fc31f42e3744aad0 (diff)
downloadfzf-af1a5f130bbd2464131ec2ae91c538ace6801a73.tar.gz
Add clear-query and clear-selection
Close #1787 Related #1364
Diffstat (limited to 'src')
-rw-r--r--src/options.go4
-rw-r--r--src/terminal.go11
2 files changed, 15 insertions, 0 deletions
diff --git a/src/options.go b/src/options.go
index bb7333ca..bd88f23f 100644
--- a/src/options.go
+++ b/src/options.go
@@ -738,6 +738,10 @@ func parseKeymap(keymap map[int][]action, str string) {
appendAction(actEndOfLine)
case "cancel":
appendAction(actCancel)
+ case "clear-query":
+ appendAction(actClearQuery)
+ case "clear-selection":
+ appendAction(actClearSelection)
case "forward-char":
appendAction(actForwardChar)
case "forward-word":
diff --git a/src/terminal.go b/src/terminal.go
index 3cd0af6e..d31ff6fe 100644
--- a/src/terminal.go
+++ b/src/terminal.go
@@ -185,6 +185,8 @@ const (
actBackwardWord
actCancel
actClearScreen
+ actClearQuery
+ actClearSelection
actDeleteChar
actDeleteCharEOF
actEndOfLine
@@ -1905,6 +1907,15 @@ func (t *Terminal) Loop() {
}
case actClearScreen:
req(reqRedraw)
+ case actClearQuery:
+ t.input = []rune{}
+ t.cx = 0
+ case actClearSelection:
+ if t.multi > 0 {
+ t.selected = make(map[int32]selectedItem)
+ t.version++
+ req(reqList, reqInfo)
+ }
case actTop:
t.vset(0)
req(reqList)