tailscale/cmd
Mihai Parparita 9a2171e4ea cmd/tsconnect: make terminal resizable
Makes the terminal container DOM node as large as the window (except for
the header) via flexbox. The xterm.js terminal is then sized to fit via
xterm-addon-fit. Once we have a computed rows/columns size, and we can
tell the SSH session of the computed size.

Required introducing an IPNSSHSession type to allow the JS to control
the SSH session once opened. That alse allows us to programatically
close it, which we do when the user closes the window with the session
still active.

I initially wanted to open the terminal in a new window instead (so that
it could be resizable independently of the main window), but xterm.js
does not appear to work well in that mode (possibly because it adds an
IntersectionObserver to pause rendering when the window is not visible,
and it ends up doing that when the parent window is hidden -- see
xtermjs/xterm.js@87dca56dee)

Fixes #5150

Signed-off-by: Mihai Parparita <mihai@tailscale.com>
2022-08-02 15:30:40 -07:00
..
addlicense cmd/addlicense: add command to add licenseheaders to generated code 2021-07-19 15:31:56 -07:00
cloner cmd/viewer: add codegen tool for Views 2022-05-06 10:58:10 -07:00
derper cmd/derper: remove support for logtail logging (#5248) 2022-08-01 14:36:55 -07:00
derpprobe all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
gitops-pusher cmd/gitops-pusher: things i forgot to push last PR (#5128) 2022-07-25 09:09:32 -04:00
hello net/netaddr: start migrating to net/netip via new netaddr adapter package 2022-07-25 16:20:43 -07:00
mkpkg cmd/mkpkg: use package flag (#4373) 2022-04-07 16:38:33 -04:00
nginx-auth cmd/nginx-auth: maintainer scripts and tailnet checking (#4460) 2022-04-20 13:06:05 -04:00
printdep Docker: add ALPINE.txt to manage alpine versions 2022-06-29 11:47:09 -07:00
proxy-to-grafana all: gofmt for Go 1.19 2022-08-02 10:08:05 -07:00
speedtest cmd: upgrade to ffcli v3 2021-09-14 13:21:55 -07:00
tailscale all: migrate more code code to net/netip directly 2022-08-02 13:59:57 -07:00
tailscaled all: migrate more code code to net/netip directly 2022-08-02 13:59:57 -07:00
testcontrol all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
tsconnect cmd/tsconnect: make terminal resizable 2022-08-02 15:30:40 -07:00
tsshd cmd/tsshd: add a package line to appease gofmt 2022-07-25 20:52:04 -07:00
viewer all: gofmt for Go 1.19 2022-08-02 10:08:05 -07:00