Răsfoiți Sursa

bumped xterm to 5.2

Eugene Pankov 2 ani în urmă
părinte
comite
1e9f5ca1dc

+ 6 - 1
tabby-core/src/utils.ts

@@ -7,8 +7,13 @@ export const WIN_BUILD_CONPTY_STABLE = 18309
 export const WIN_BUILD_WSL_EXE_DISTRO_FLAG = 17763
 export const WIN_BUILD_FLUENT_BG_SUPPORTED = 17063
 
+export function getWindows10Build (): number|undefined {
+    return process.platform === 'win32' && parseFloat(os.release()) >= 10 ? parseInt(os.release().split('.')[2]) : undefined
+}
+
 export function isWindowsBuild (build: number): boolean {
-    return process.platform === 'win32' && parseFloat(os.release()) >= 10 && parseInt(os.release().split('.')[2]) >= build
+    const b = getWindows10Build()
+    return b !== undefined && b >= build
 }
 
 // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types

+ 6 - 6
tabby-terminal/package.json

@@ -28,15 +28,15 @@
     "ngx-colors": "^3.4.0",
     "patch-package": "^6.5.0",
     "runes": "^0.4.2",
-    "xterm": "^5.1.0",
-    "xterm-addon-canvas": "^0.4.0-beta.9",
+    "xterm": "^5.2.0",
+    "xterm-addon-canvas": "^0.4.0",
     "xterm-addon-fit": "^0.7.0",
-    "xterm-addon-image": "^0.3.1",
+    "xterm-addon-image": "^0.4.1",
     "xterm-addon-ligatures": "^0.6.0",
-    "xterm-addon-search": "^0.11.0",
-    "xterm-addon-serialize": "^0.9.0",
+    "xterm-addon-search": "^0.12.0",
+    "xterm-addon-serialize": "^0.10.0",
     "xterm-addon-unicode11": "^0.5.0",
-    "xterm-addon-webgl": "^0.14.0",
+    "xterm-addon-webgl": "^0.15.0",
     "zmodem.js": "^0.1.9"
   },
   "peerDependencies": {

+ 0 - 13
tabby-terminal/patches/xterm+5.1.0.patch

@@ -1,13 +0,0 @@
-diff --git a/node_modules/xterm/src/common/CircularList.ts b/node_modules/xterm/src/common/CircularList.ts
-index 8ab80d5..622a1ef 100644
---- a/node_modules/xterm/src/common/CircularList.ts
-+++ b/node_modules/xterm/src/common/CircularList.ts
-@@ -4,7 +4,7 @@
-  */
- 
- import { ICircularList } from 'common/Types';
--import { EventEmitter, IEvent } from 'common/EventEmitter';
-+import { EventEmitter } from 'common/EventEmitter';
- import { Disposable } from 'common/Lifecycle';
- 
- export interface IInsertEvent {

+ 5 - 2
tabby-terminal/src/frontends/xtermFrontend.ts

@@ -1,6 +1,6 @@
 import { BehaviorSubject, filter, firstValueFrom, takeUntil } from 'rxjs'
 import { Injector } from '@angular/core'
-import { ConfigService, getCSSFontFamily, HostAppService, HotkeysService, Platform, PlatformService, ThemesService } from 'tabby-core'
+import { ConfigService, getCSSFontFamily, getWindows10Build, HostAppService, HotkeysService, Platform, PlatformService, ThemesService } from 'tabby-core'
 import { Frontend, SearchOptions, SearchState } from './frontend'
 import { Terminal, ITheme } from 'xterm'
 import { FitAddon } from 'xterm-addon-fit'
@@ -99,7 +99,10 @@ export class XTermFrontend extends Frontend {
             allowTransparency: true,
             allowProposedApi: true,
             overviewRulerWidth: 8,
-            windowsMode: process.platform === 'win32',
+            windowsPty: process.platform === 'win32' ? {
+                backend: this.configService.store.terminal.useConPTY ? 'conpty' : 'winpty',
+                buildNumber: getWindows10Build(),
+            } : undefined,
         })
         this.flowControl = new FlowControl(this.xterm)
         this.xtermCore = this.xterm['_core']

+ 24 - 24
tabby-terminal/yarn.lock

@@ -464,20 +464,20 @@ xtend@^4.0.0:
   resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
   integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
 
-xterm-addon-canvas@^0.4.0-beta.9:
-  version "0.4.0-beta.9"
-  resolved "https://registry.yarnpkg.com/xterm-addon-canvas/-/xterm-addon-canvas-0.4.0-beta.9.tgz#e570fa4592890f92cc86706f2bba0dd128a8641d"
-  integrity sha512-BWRVWyUW7NY2g4BBMm3ecPQvbdyKXFgABnpmh4m0TVHqFJMNeXdNuTc94KiDbE+cvw8jtAY9NC/OIM4HcgjAIQ==
+xterm-addon-canvas@^0.4.0:
+  version "0.4.0"
+  resolved "https://registry.yarnpkg.com/xterm-addon-canvas/-/xterm-addon-canvas-0.4.0.tgz#a6ee6a56deb0c495fcef29afe6d94b7119a0f334"
+  integrity sha512-iTC8CdjX9+hGX7jiEuiDMXzHsY/FKJdVnbjep5xjRXNu7RKOk15xuecIkJ7HZORqMVPpr4DGS3jyd9XUoBuxqw==
 
 xterm-addon-fit@^0.7.0:
   version "0.7.0"
   resolved "https://registry.yarnpkg.com/xterm-addon-fit/-/xterm-addon-fit-0.7.0.tgz#b8ade6d96e63b47443862088f6670b49fb752c6a"
   integrity sha512-tQgHGoHqRTgeROPnvmtEJywLKoC/V9eNs4bLLz7iyJr1aW/QFzRwfd3MGiJ6odJd9xEfxcW36/xRU47JkD5NKQ==
 
-xterm-addon-image@^0.3.1:
-  version "0.3.1"
-  resolved "https://registry.yarnpkg.com/xterm-addon-image/-/xterm-addon-image-0.3.1.tgz#970b4003d1239b541ace7643f4f7e72a7f90a07d"
-  integrity sha512-7wLkYAoMCMwcvOhzqVlMK1wRHPQa1ZiFRdJ82oQVdnkp0ktV2LNmNu0JPu6H0Fr0eUfxUmcrqwhI9BMiZuPyrw==
+xterm-addon-image@^0.4.1:
+  version "0.4.1"
+  resolved "https://registry.yarnpkg.com/xterm-addon-image/-/xterm-addon-image-0.4.1.tgz#ec8f750af48005ad641c1128fa1f551ac198472a"
+  integrity sha512-iJpYyvtbHg4oXSv+D6J73ZfCjnboZpbZ567MLplXDBlYSUknv3kvPTfVMPJATV7Zsx7+bDgyXboCh9vsDf/m/w==
 
 xterm-addon-ligatures@^0.6.0:
   version "0.6.0"
@@ -487,30 +487,30 @@ xterm-addon-ligatures@^0.6.0:
     font-finder "^1.1.0"
     font-ligatures "^1.4.1"
 
-xterm-addon-search@^0.11.0:
-  version "0.11.0"
-  resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.11.0.tgz#2a00ff7f9848f6140e7c4d1782486b0b18b06e0d"
-  integrity sha512-6U4uHXcQ7G5igsdaGqrJ9ehm7vep24bXqWxuy3AnIosXF2Z5uy2MvmYRyTGNembIqPV/x1YhBQ7uShtuqBHhOQ==
+xterm-addon-search@^0.12.0:
+  version "0.12.0"
+  resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.12.0.tgz#2ef8f56aecf699a3989223a1260f1e079d7c74e2"
+  integrity sha512-hXAuO7Ts2+Jf9K8mZrUx8IFd7c/Flgks/jyqA1L4reymyfmXtcsd+WDLel8R9Tgy2CLyKABVBP09/Ua/FmXcvg==
 
-xterm-addon-serialize@^0.9.0:
-  version "0.9.0"
-  resolved "https://registry.yarnpkg.com/xterm-addon-serialize/-/xterm-addon-serialize-0.9.0.tgz#3eee5f5c34b16e48891ec59b213716bab2354bf4"
-  integrity sha512-qJju2YJFh8c8pbtCYtHaG7gDDHBpDJ4a4JQZvOzuiMxOjgeM1oCnFNjbhzMuK/fOUa59FmvIUGQyqn3WL9q7qw==
+xterm-addon-serialize@^0.10.0:
+  version "0.10.0"
+  resolved "https://registry.yarnpkg.com/xterm-addon-serialize/-/xterm-addon-serialize-0.10.0.tgz#c16a8cb456dcbd2f008fa83d15ce1d4721892e01"
+  integrity sha512-Syp9eSBypn70iAczcJ+kAi0foQIepAvFS6x53JwI4XylTBHn87Ep9fovslhwmUV3rwH2yMnpdDjXH5W/whx2lA==
 
 xterm-addon-unicode11@^0.5.0:
   version "0.5.0"
   resolved "https://registry.yarnpkg.com/xterm-addon-unicode11/-/xterm-addon-unicode11-0.5.0.tgz#41c0d96acc1e3bb6c6596eee64e163b6bca74be7"
   integrity sha512-Jm4/g4QiTxiKiTbYICQgC791ubhIZyoIwxAIgOW8z8HWFNY+lwk+dwaKEaEeGBfM48Vk8fklsUW9u/PlenYEBg==
 
-xterm-addon-webgl@^0.14.0:
-  version "0.14.0"
-  resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.14.0.tgz#bd9136710bd5d130a0a51fd42e6d14ea39348236"
-  integrity sha512-zcxL4RVVjeS7NNFeKe5HHQI8OUEx3wZpE4EqLoTVipa2UrTR+qLsigo16UEp/yVcYBMhK7tsJ/AJokoEe/f0mw==
+xterm-addon-webgl@^0.15.0:
+  version "0.15.0"
+  resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.15.0.tgz#c10f93ca619524f5a470eaac44258bab0ae8e3c7"
+  integrity sha512-ZLcqogMFHr4g/YRhcCh3xE8tTklnyut/M+O/XhVsFBRB/YCvYhPdLQ5/AQk54V0wjWAQpa8CF3W8DVR9OqyMCg==
 
-xterm@^5.1.0:
-  version "5.1.0"
-  resolved "https://registry.yarnpkg.com/xterm/-/xterm-5.1.0.tgz#3e160d60e6801c864b55adf19171c49d2ff2b4fc"
-  integrity sha512-LovENH4WDzpwynj+OTkLyZgJPeDom9Gra4DMlGAgz6pZhIDCQ+YuO7yfwanY+gVbn/mmZIStNOnVRU/ikQuAEQ==
+xterm@^5.2.0:
+  version "5.2.1"
+  resolved "https://registry.yarnpkg.com/xterm/-/xterm-5.2.1.tgz#b3fea7bdb55b9be1d4b31f4cd1091f26ac42afb8"
+  integrity sha512-cs5Y1fFevgcdoh2hJROMVIWwoBHD80P1fIP79gopLHJIE4kTzzblanoivxTiQ4+92YM9IxS36H1q0MxIJXQBcA==
 
 yallist@^4.0.0:
   version "4.0.0"