Merge pull request #162 from heavenshell/feature/console_key

Add c-n, c-j, c-p, c-k, c-m to console keybind
jh-changes
Shin'ya Ueoka 7 years ago committed by GitHub
commit bdae21b3a1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 42
      src/console/components/console.js

@ -31,14 +31,30 @@ export default class ConsoleComponent {
} }
} }
doEnter(e) {
e.stopPropagation();
e.preventDefault();
return this.onEntered(e.target.value);
}
selectNext(e) {
this.store.dispatch(consoleActions.completionNext());
e.stopPropagation();
e.preventDefault();
}
selectPrev(e) {
this.store.dispatch(consoleActions.completionPrev());
e.stopPropagation();
e.preventDefault();
}
onKeyDown(e) { onKeyDown(e) {
switch (e.keyCode) { switch (e.keyCode) {
case KeyboardEvent.DOM_VK_ESCAPE: case KeyboardEvent.DOM_VK_ESCAPE:
return this.hideCommand(); return this.hideCommand();
case KeyboardEvent.DOM_VK_RETURN: case KeyboardEvent.DOM_VK_RETURN:
e.stopPropagation(); return this.doEnter(e);
e.preventDefault();
return this.onEntered(e.target.value);
case KeyboardEvent.DOM_VK_TAB: case KeyboardEvent.DOM_VK_TAB:
if (e.shiftKey) { if (e.shiftKey) {
this.store.dispatch(consoleActions.completionPrev()); this.store.dispatch(consoleActions.completionPrev());
@ -48,6 +64,26 @@ export default class ConsoleComponent {
e.stopPropagation(); e.stopPropagation();
e.preventDefault(); e.preventDefault();
break; break;
case KeyboardEvent.DOM_VK_OPEN_BRACKET:
if (e.ctrlKey) {
return this.hideCommand();
}
break;
case KeyboardEvent.DOM_VK_M:
if (e.ctrlKey) {
return this.doEnter(e);
}
break;
case KeyboardEvent.DOM_VK_N:
if (e.ctrlKey) {
this.selectNext(e);
}
break;
case KeyboardEvent.DOM_VK_P:
if (e.ctrlKey) {
this.selectPrev(e);
}
break;
} }
} }