Merge pull request #763 from weaveworks/748-fix-terminal-keys

Fixes AltGr+3 which is required in some locales (UK).
This commit is contained in:
David
2015-12-14 15:28:30 +01:00
2 changed files with 8 additions and 5 deletions
@@ -125,7 +125,6 @@ export default class Terminal extends React.Component {
this.term = new Term({
cols: this.state.cols,
rows: this.state.rows,
screenKeys: true,
convertEol: !this.props.raw
});
+8 -4
View File
@@ -2803,8 +2803,11 @@ Terminal.prototype.keyDown = function(ev) {
key = '\x1b' + String.fromCharCode(ev.keyCode + 32);
} else if (ev.keyCode === 192) {
key = '\x1b`';
} else if (ev.keyCode >= 48 && ev.keyCode <= 57) {
key = '\x1b' + (ev.keyCode - 48);
// disable bash repeating for now. Supporting UK locale is more
// important.
//
// } else if (ev.keyCode >= 48 && ev.keyCode <= 57) {
// key = '\x1b' + (ev.keyCode - 48);
}
}
break;
@@ -2858,7 +2861,8 @@ Terminal.prototype.keyPress = function(ev) {
return false;
}
if (!key || ev.ctrlKey || ev.altKey || ev.metaKey) return false;
// allow ev.altKey through here, its used like "shift" in some locales.
if (!key || ev.ctrlKey || ev.metaKey) return false;
key = String.fromCharCode(key);
@@ -5970,4 +5974,4 @@ if (typeof module !== 'undefined') {
}).call(function() {
return this || (typeof window !== 'undefined' ? window : global);
}());
}());