diff --git a/internal/server/handlers_panel_term.go b/internal/server/handlers_panel_term.go index 9006acc..2a27c0a 100644 --- a/internal/server/handlers_panel_term.go +++ b/internal/server/handlers_panel_term.go @@ -136,7 +136,9 @@ func (s *Server) handlePanelTermWS(w http.ResponseWriter, r *http.Request) { http.Error(w, "closed", http.StatusGone) return } - conn, err := websocket.Accept(w, r, &websocket.AcceptOptions{CompressionMode: websocket.CompressionDisabled}) + // Terminal text packs well: deflate with the context kept between + // messages, for the larger ones (screens of output, not keystrokes). + conn, err := websocket.Accept(w, r, &websocket.AcceptOptions{CompressionMode: websocket.CompressionContextTakeover, CompressionThreshold: 256}) if err != nil { return }