keyboard supports !a to indicate release a
parent
1fc6d71db6
commit
8e92c9a6d6
|
|
@ -44,6 +44,8 @@ func (b *Buffered) listen() {
|
|||
for i := range buttons {
|
||||
if buttons[i].Down {
|
||||
b.keys[buttons[i].Char] = time.Now().UnixNano()
|
||||
} else {
|
||||
b.keys[buttons[i].Char] = 0
|
||||
}
|
||||
}
|
||||
b.lock.Unlock()
|
||||
|
|
|
|||
|
|
@ -50,10 +50,14 @@ func (kb Keyboard) Read() []Button {
|
|||
panic(err)
|
||||
}
|
||||
|
||||
down := true
|
||||
result := make([]Button, 0, n)
|
||||
for i := 0; i < n; i++ {
|
||||
if b[i] != '\n' {
|
||||
result = append(result, Button{Char: b[i], Down: true})
|
||||
if b[i] == '!' {
|
||||
down = false
|
||||
} else if b[i] != '\n' {
|
||||
result = append(result, Button{Char: b[i], Down: down})
|
||||
down = true
|
||||
}
|
||||
}
|
||||
return result
|
||||
|
|
|
|||
Loading…
Reference in New Issue