diff --git a/addons/attach/attach.js b/addons/attach/attach.js new file mode 100644 index 0000000000..12eb1359e4 --- /dev/null +++ b/addons/attach/attach.js @@ -0,0 +1,23 @@ +/* + * Implements the attach method, that + * attaches the terminal to a WebSocket stream. + * + * The bidirectional argument indicates, whether the terminal should + * send data to the socket as well and is true, by default. + */ +Terminal.prototype.attach = function (socket, bidirectional) { + var term = this; + + bidirectional = (typeof bidirectional == 'undefined') ? true : bidirectional; + this.socket = socket; + + socket.addEventListener('message', function (ev) { + term.write(ev.data); + }); + + if (bidirectional) { + this.on('data', function (data) { + socket.send(data); + }); + } +} \ No newline at end of file diff --git a/addons/attach/index.html b/addons/attach/index.html new file mode 100644 index 0000000000..654a024521 --- /dev/null +++ b/addons/attach/index.html @@ -0,0 +1,38 @@ + + +
+ + + + + + + + + + + \ No newline at end of file diff --git a/addons/fullscreen/fullscreen.css b/addons/fullscreen/fullscreen.css new file mode 100644 index 0000000000..ced6c529d8 --- /dev/null +++ b/addons/fullscreen/fullscreen.css @@ -0,0 +1,10 @@ +.xterm.fullscreen { + position: fixed; + top: 0; + bottom: 0; + left: 0; + right: 0; + width: auto; + height: auto; + z-index: 255; +} \ No newline at end of file diff --git a/addons/fullscreen/fullscreen.js b/addons/fullscreen/fullscreen.js new file mode 100644 index 0000000000..a3012a7e40 --- /dev/null +++ b/addons/fullscreen/fullscreen.js @@ -0,0 +1,25 @@ +/* + * Fullscreen addon for xterm.js + * + * Implements the toggleFullscreen function. + * + * If the `fullscreen` argument has been supplied, then + * if it is true, the fullscreen mode gets turned on, + * if it is false or null, the fullscreen mode gets turned off. + * + * If the `fullscreen` argument has not been supplied, the + * fullscreen mode is being toggled. + */ +Terminal.prototype.toggleFullscreen = function (fullscreen) { + var fn; + + if (typeof fullscreen == 'undefined') { + fn = (this.element.classList.contains('fullscreen')) ? 'remove' : 'add'; + } else if (!fullscreen) { + fn = 'remove'; + } else { + fn = 'add'; + } + + this.element.classList[fn]('fullscreen'); +} \ No newline at end of file diff --git a/bower.json b/bower.json index f61a3395a0..c7aa76f4fa 100644 --- a/bower.json +++ b/bower.json @@ -1,5 +1,5 @@ { "name": "xterm.js", - "version": "0.6", + "version": "0.8", "ignore": ["demo", "docs", "test", ".gitignore"] -} \ No newline at end of file +} diff --git a/demo/index.html b/demo/index.html index 36016c1d19..73aa304a06 100644 --- a/demo/index.html +++ b/demo/index.html @@ -3,8 +3,10 @@