diff options
| author | Shin'ya Ueoka <ueokande@i-beam.org> | 2017-10-04 18:58:54 +0900 | 
|---|---|---|
| committer | Shin'ya Ueoka <ueokande@i-beam.org> | 2017-10-04 19:02:02 +0900 | 
| commit | 5e5fdafd94e8a3221224c0f7e17bda48a1de19cd (patch) | |
| tree | ae742d25632a59dd10eacfce95facd71a1510736 /src/components | |
| parent | 3244c3c35db7639dc1bb08d9b0bcd40323e9d626 (diff) | |
fix key-repeat does not work
Diffstat (limited to 'src/components')
| -rw-r--r-- | src/components/content-input.js | 15 | 
1 files changed, 9 insertions, 6 deletions
| diff --git a/src/components/content-input.js b/src/components/content-input.js index 6437128..10c785b 100644 --- a/src/components/content-input.js +++ b/src/components/content-input.js @@ -10,23 +10,26 @@ export default class ContentInputComponent {    }    onKeyPress(e) { +    if (this.pressed[e.key] && this.pressed[e.key] !== 'keypress') { +      return; +    } +    this.pressed[e.key] = 'keypress';      this.capture(e);    }    onKeyDown(e) { +    if (this.pressed[e.key] && this.pressed[e.key] !== 'keydown') { +      return; +    } +    this.pressed[e.key] = 'keydown';      this.capture(e);    }    onKeyUp(e) { -    this.pressed[e.key] = false; +    delete this.pressed[e.key];    }    capture(e) { -    if (this.pressed[e.key]) { -      return; -    } -    this.pressed[e.key] = true; -      if (e.target instanceof HTMLInputElement ||        e.target instanceof HTMLTextAreaElement ||        e.target instanceof HTMLSelectElement) { | 
