Integrate xterm v3.2 (#2768)

* Add xterm3.2

Fixes #2751
This commit is contained in:
CHaBou 2018-03-18 00:24:26 +01:00 committed by GitHub
parent 7e40e88a36
commit 429710328a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 52 additions and 41 deletions

View file

@ -106,7 +106,7 @@ export default class SplitPane extends React.PureComponent {
render() { render() {
const children = this.props.children; const children = this.props.children;
const {direction, borderColor} = this.props; const {direction, borderColor} = this.props;
const sizeProperty = direction === 'horizontal' ? 'height' : 'flexBasis'; const sizeProperty = direction === 'horizontal' ? 'height' : 'width';
let {sizes} = this.props; let {sizes} = this.props;
if (!sizes) { if (!sizes) {
// workaround for the fact that if we don't specify // workaround for the fact that if we don't specify

View file

@ -66,6 +66,16 @@ export default class StyleSheet extends React.PureComponent {
/* On OS X this is required in order for the scroll bar to appear fully opaque */ /* On OS X this is required in order for the scroll bar to appear fully opaque */
background-color: ${backgroundColor}; background-color: ${backgroundColor};
overflow-y: scroll; overflow-y: scroll;
cursor: default;
position: absolute;
right: 0;
left: 0;
top: 0;
bottom: 0;
}
.xterm .xterm-screen {
position: relative;
} }
.xterm canvas { .xterm canvas {
@ -94,6 +104,29 @@ export default class StyleSheet extends React.PureComponent {
cursor: text; cursor: text;
} }
.xterm .xterm-accessibility,
.xterm .xterm-message {
position: absolute;
left: 0;
top: 0;
bottom: 0;
right: 0;
z-index: 100;
color: transparent;
}
.xterm .xterm-accessibility-tree:focus [id^='xterm-active-item-'] {
outline: 1px solid #f80;
}
.xterm .live-region {
position: absolute;
left: -9999px;
width: 1px;
height: 1px;
overflow: hidden;
}
::-webkit-scrollbar { ::-webkit-scrollbar {
width: 5px; width: 5px;
} }

View file

@ -12,19 +12,14 @@
"prepush": "yarn test", "prepush": "yarn test",
"postinstall": "electron-builder install-app-deps && yarn run rebuild-node-pty && yarn --cwd node_modules/xterm", "postinstall": "electron-builder install-app-deps && yarn run rebuild-node-pty && yarn --cwd node_modules/xterm",
"rebuild-node-pty": "electron-rebuild -f -w app/node_modules/node-pty -m app", "rebuild-node-pty": "electron-rebuild -f -w app/node_modules/node-pty -m app",
"dist": "yarn run build && cross-env BABEL_ENV=production babel --out-file app/renderer/bundle.js --no-comments --minified app/renderer/bundle.js && build", "dist":
"clean": "node ./bin/rimraf-standalone.js node_modules && node ./bin/rimraf-standalone.js ./app/node_modules && node ./bin/rimraf-standalone.js ./app/renderer" "yarn run build && cross-env BABEL_ENV=production babel --out-file app/renderer/bundle.js --no-comments --minified app/renderer/bundle.js && build",
"clean":
"node ./bin/rimraf-standalone.js node_modules && node ./bin/rimraf-standalone.js ./app/node_modules && node ./bin/rimraf-standalone.js ./app/renderer"
}, },
"eslintConfig": { "eslintConfig": {
"plugins": [ "plugins": ["react", "prettier"],
"react", "extends": ["eslint:recommended", "plugin:react/recommended", "prettier"],
"prettier"
],
"extends": [
"eslint:recommended",
"plugin:react/recommended",
"prettier"
],
"parserOptions": { "parserOptions": {
"ecmaVersion": 8, "ecmaVersion": 8,
"sourceType": "module", "sourceType": "module",
@ -41,10 +36,7 @@
"node": true "node": true
}, },
"rules": { "rules": {
"func-names": [ "func-names": ["error", "as-needed"],
"error",
"as-needed"
],
"no-shadow": "error", "no-shadow": "error",
"no-extra-semi": 0, "no-extra-semi": 0,
"react/prop-types": 0, "react/prop-types": 0,
@ -90,9 +82,7 @@
] ]
}, },
"babel": { "babel": {
"presets": [ "presets": ["react"],
"react"
],
"plugins": [ "plugins": [
[ [
"styled-jsx/babel", "styled-jsx/babel",
@ -137,9 +127,7 @@
{ {
"from": "./build/${os}/", "from": "./build/${os}/",
"to": "./bin/", "to": "./bin/",
"filter": [ "filter": ["hyper*"]
"hyper*"
]
} }
], ],
"linux": { "linux": {
@ -147,28 +135,20 @@
"target": [ "target": [
{ {
"target": "deb", "target": "deb",
"arch": [ "arch": ["x64"]
"x64"
]
}, },
{ {
"target": "AppImage", "target": "AppImage",
"arch": [ "arch": ["x64"]
"x64"
]
}, },
{ {
"target": "rpm", "target": "rpm",
"arch": [ "arch": ["x64"]
"x64"
]
} }
] ]
}, },
"win": { "win": {
"target": [ "target": ["squirrel"]
"squirrel"
]
}, },
"mac": { "mac": {
"category": "public.app-category.developer-tools", "category": "public.app-category.developer-tools",
@ -182,9 +162,7 @@
}, },
"protocols": { "protocols": {
"name": "ssh URL", "name": "ssh URL",
"schemes": [ "schemes": ["ssh"]
"ssh"
]
} }
}, },
"license": "MIT", "license": "MIT",
@ -221,7 +199,7 @@
"styled-jsx": "2.2.6", "styled-jsx": "2.2.6",
"stylis": "3.5.0", "stylis": "3.5.0",
"uuid": "3.1.0", "uuid": "3.1.0",
"xterm": "chabou/xterm.js#b9dac85" "xterm": "3.2.0"
}, },
"devDependencies": { "devDependencies": {
"ava": "0.25.0", "ava": "0.25.0",

View file

@ -6693,9 +6693,9 @@ xtend@~2.1.1:
dependencies: dependencies:
object-keys "~0.4.0" object-keys "~0.4.0"
xterm@chabou/xterm.js#b9dac85: xterm@3.2.0:
version "3.0.0-hyper.2" version "3.2.0"
resolved "https://codeload.github.com/chabou/xterm.js/tar.gz/b9dac85cf33bdc19c31ac0ba223c5f2a3b11e6d2" resolved "https://registry.yarnpkg.com/xterm/-/xterm-3.2.0.tgz#da50f54a83d81463c0a2c9f2e0a5d14d3867df02"
y18n@^3.2.1: y18n@^3.2.1:
version "3.2.1" version "3.2.1"