From f4ec8f85fa563f040f9402cd98be79f8122010ea Mon Sep 17 00:00:00 2001 From: sawka Date: Mon, 5 Sep 2022 20:06:44 -0700 Subject: [PATCH] send window:resize command --- src/model.ts | 16 ++++++++++++++++ src/term.ts | 1 - 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/model.ts b/src/model.ts index b5aa9507..b45c877b 100644 --- a/src/model.ts +++ b/src/model.ts @@ -280,11 +280,23 @@ class ScreenWindow { term.updatePtyData(ptyMsg.ptypos, data); } + isActive() : boolean { + let activeScreen = GlobalModel.getActiveScreen(); + if (activeScreen == null) { + return false; + } + return (this.sessionId = activeScreen.sessionId) && (this.screenId == activeScreen.screenId); + } + colsCallback(cols : number) : void { + if (!this.isActive()) { + return; + } console.log("cols set", cols); for (let cmdid in this.terms) { this.terms[cmdid].resizeCols(cols); } + GlobalCommandRunner.resizeWindow(this.windowId, cols); } setWidth(width : number) : void { @@ -1740,6 +1752,10 @@ class CommandRunner { closeScreen(screen : string) { GlobalModel.submitCommand("screen", "close", [screen], {"nohist": "1"}, false); } + + resizeWindow(windowId : string, cols : number) { + GlobalModel.submitCommand("window", "resize", null, {"nohist": "1", "window": windowId, "cols": String(cols)}, false); + } }; let GlobalModel : Model = null; diff --git a/src/term.ts b/src/term.ts index ab9e58bd..759d5216 100644 --- a/src/term.ts +++ b/src/term.ts @@ -204,7 +204,6 @@ class TermWrap { if (ptyOffsetStr != null && !isNaN(parseInt(ptyOffsetStr))) { ptyOffset = parseInt(ptyOffsetStr); } - console.log("set ptyoffset", ptyOffset); return resp.arrayBuffer() }).then((buf) => { setTimeout(() => {