summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJunegunn Choi <junegunn.c@gmail.com>2017-02-24 02:30:11 +0900
committerJunegunn Choi <junegunn.c@gmail.com>2017-02-24 02:30:11 +0900
commit0b940e4b2ba2eb2b00541a870f9b1a23c15c9bce (patch)
treec38c0b6cb3a63910d63b48a2348038ba78135283
parentb29375c844744fb45183bdbbb6d1ff854cf23b7a (diff)
Redraw item if query string has changed
-rw-r--r--src/terminal.go5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/terminal.go b/src/terminal.go
index d056c1a0..4bff1b18 100644
--- a/src/terminal.go
+++ b/src/terminal.go
@@ -46,6 +46,7 @@ type itemLine struct {
current bool
selected bool
label string
+ queryLen int
width int
result Result
}
@@ -737,11 +738,13 @@ func (t *Terminal) printItem(result *Result, line int, i int, current bool) {
}
// Avoid unnecessary redraw
- newLine := itemLine{current: current, selected: selected, label: label, result: *result, width: 0}
+ newLine := itemLine{current: current, selected: selected, label: label,
+ result: *result, queryLen: len(t.input), width: 0}
prevLine := t.prevLines[i]
if prevLine.current == newLine.current &&
prevLine.selected == newLine.selected &&
prevLine.label == newLine.label &&
+ prevLine.queryLen == newLine.queryLen &&
prevLine.result == newLine.result {
return
}