@xterm/xterm 5.6.0-beta.12 → 5.6.0-beta.121

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/README.md +9 -3
  2. package/css/xterm.css +71 -4
  3. package/lib/xterm.js +1 -1
  4. package/lib/xterm.js.map +1 -1
  5. package/lib/xterm.mjs +53 -0
  6. package/lib/xterm.mjs.map +7 -0
  7. package/package.json +43 -33
  8. package/src/browser/AccessibilityManager.ts +54 -26
  9. package/src/browser/{Terminal.ts → CoreBrowserTerminal.ts} +159 -145
  10. package/src/browser/Linkifier.ts +26 -14
  11. package/src/browser/LocalizableStrings.ts +15 -4
  12. package/src/browser/{Types.d.ts → Types.ts} +67 -15
  13. package/src/browser/Viewport.ts +143 -370
  14. package/src/browser/decorations/BufferDecorationRenderer.ts +14 -9
  15. package/src/browser/decorations/OverviewRulerRenderer.ts +40 -44
  16. package/src/browser/input/CompositionHelper.ts +2 -1
  17. package/src/browser/input/MoveToCell.ts +3 -1
  18. package/src/browser/public/Terminal.ts +25 -19
  19. package/src/browser/renderer/dom/DomRenderer.ts +19 -14
  20. package/src/browser/renderer/dom/DomRendererRowFactory.ts +35 -15
  21. package/src/browser/renderer/shared/Constants.ts +0 -8
  22. package/src/browser/renderer/shared/Types.ts +84 -0
  23. package/src/browser/services/CharSizeService.ts +6 -6
  24. package/src/browser/services/CoreBrowserService.ts +15 -15
  25. package/src/browser/services/LinkProviderService.ts +2 -2
  26. package/src/browser/services/RenderService.ts +20 -20
  27. package/src/browser/services/SelectionService.ts +8 -8
  28. package/src/browser/services/Services.ts +13 -13
  29. package/src/browser/services/ThemeService.ts +19 -58
  30. package/src/browser/shared/Constants.ts +8 -0
  31. package/src/common/CircularList.ts +5 -5
  32. package/src/common/CoreTerminal.ts +35 -41
  33. package/src/common/InputHandler.ts +83 -56
  34. package/src/common/{Types.d.ts → Types.ts} +13 -17
  35. package/src/common/buffer/Buffer.ts +15 -7
  36. package/src/common/buffer/BufferReflow.ts +9 -6
  37. package/src/common/buffer/BufferSet.ts +5 -5
  38. package/src/common/buffer/Marker.ts +4 -4
  39. package/src/common/buffer/{Types.d.ts → Types.ts} +2 -2
  40. package/src/common/input/Keyboard.ts +0 -24
  41. package/src/common/input/WriteBuffer.ts +3 -3
  42. package/src/common/parser/EscapeSequenceParser.ts +4 -4
  43. package/src/common/public/BufferNamespaceApi.ts +3 -3
  44. package/src/common/services/BufferService.ts +10 -7
  45. package/src/common/services/CoreMouseService.ts +53 -6
  46. package/src/common/services/CoreService.ts +8 -6
  47. package/src/common/services/DecorationService.ts +8 -9
  48. package/src/common/services/InstantiationService.ts +1 -1
  49. package/src/common/services/LogService.ts +2 -2
  50. package/src/common/services/OptionsService.ts +8 -6
  51. package/src/common/services/ServiceRegistry.ts +1 -1
  52. package/src/common/services/Services.ts +32 -17
  53. package/src/common/services/UnicodeService.ts +2 -2
  54. package/src/vs/base/browser/browser.ts +141 -0
  55. package/src/vs/base/browser/canIUse.ts +49 -0
  56. package/src/vs/base/browser/dom.ts +2369 -0
  57. package/src/vs/base/browser/fastDomNode.ts +316 -0
  58. package/src/vs/base/browser/globalPointerMoveMonitor.ts +112 -0
  59. package/src/vs/base/browser/iframe.ts +135 -0
  60. package/src/vs/base/browser/keyboardEvent.ts +213 -0
  61. package/src/vs/base/browser/mouseEvent.ts +229 -0
  62. package/src/vs/base/browser/touch.ts +372 -0
  63. package/src/vs/base/browser/ui/scrollbar/abstractScrollbar.ts +303 -0
  64. package/src/vs/base/browser/ui/scrollbar/horizontalScrollbar.ts +114 -0
  65. package/src/vs/base/browser/ui/scrollbar/scrollableElement.ts +720 -0
  66. package/src/vs/base/browser/ui/scrollbar/scrollableElementOptions.ts +165 -0
  67. package/src/vs/base/browser/ui/scrollbar/scrollbarArrow.ts +114 -0
  68. package/src/vs/base/browser/ui/scrollbar/scrollbarState.ts +243 -0
  69. package/src/vs/base/browser/ui/scrollbar/scrollbarVisibilityController.ts +118 -0
  70. package/src/vs/base/browser/ui/scrollbar/verticalScrollbar.ts +116 -0
  71. package/src/vs/base/browser/ui/widget.ts +57 -0
  72. package/src/vs/base/browser/window.ts +14 -0
  73. package/src/vs/base/common/arrays.ts +887 -0
  74. package/src/vs/base/common/arraysFind.ts +202 -0
  75. package/src/vs/base/common/assert.ts +71 -0
  76. package/src/vs/base/common/async.ts +1992 -0
  77. package/src/vs/base/common/cancellation.ts +148 -0
  78. package/src/vs/base/common/charCode.ts +450 -0
  79. package/src/vs/base/common/collections.ts +140 -0
  80. package/src/vs/base/common/decorators.ts +130 -0
  81. package/src/vs/base/common/equals.ts +146 -0
  82. package/src/vs/base/common/errors.ts +303 -0
  83. package/src/vs/base/common/event.ts +1778 -0
  84. package/src/vs/base/common/functional.ts +32 -0
  85. package/src/vs/base/common/hash.ts +316 -0
  86. package/src/vs/base/common/iterator.ts +159 -0
  87. package/src/vs/base/common/keyCodes.ts +526 -0
  88. package/src/vs/base/common/keybindings.ts +284 -0
  89. package/src/vs/base/common/lazy.ts +47 -0
  90. package/src/vs/base/common/lifecycle.ts +801 -0
  91. package/src/vs/base/common/linkedList.ts +142 -0
  92. package/src/vs/base/common/map.ts +202 -0
  93. package/src/vs/base/common/numbers.ts +98 -0
  94. package/src/vs/base/common/observable.ts +76 -0
  95. package/src/vs/base/common/observableInternal/api.ts +31 -0
  96. package/src/vs/base/common/observableInternal/autorun.ts +281 -0
  97. package/src/vs/base/common/observableInternal/base.ts +489 -0
  98. package/src/vs/base/common/observableInternal/debugName.ts +145 -0
  99. package/src/vs/base/common/observableInternal/derived.ts +428 -0
  100. package/src/vs/base/common/observableInternal/lazyObservableValue.ts +146 -0
  101. package/src/vs/base/common/observableInternal/logging.ts +328 -0
  102. package/src/vs/base/common/observableInternal/promise.ts +209 -0
  103. package/src/vs/base/common/observableInternal/utils.ts +610 -0
  104. package/src/vs/base/common/platform.ts +281 -0
  105. package/src/vs/base/common/scrollable.ts +522 -0
  106. package/src/vs/base/common/sequence.ts +34 -0
  107. package/src/vs/base/common/stopwatch.ts +43 -0
  108. package/src/vs/base/common/strings.ts +557 -0
  109. package/src/vs/base/common/symbols.ts +9 -0
  110. package/src/vs/base/common/uint.ts +59 -0
  111. package/src/vs/patches/nls.ts +90 -0
  112. package/src/vs/typings/base-common.d.ts +20 -0
  113. package/src/vs/typings/require.d.ts +42 -0
  114. package/src/vs/typings/thenable.d.ts +12 -0
  115. package/src/vs/typings/vscode-globals-nls.d.ts +36 -0
  116. package/src/vs/typings/vscode-globals-product.d.ts +33 -0
  117. package/typings/xterm.d.ts +80 -14
  118. package/src/browser/Lifecycle.ts +0 -33
  119. package/src/browser/renderer/shared/CellColorResolver.ts +0 -236
  120. package/src/browser/renderer/shared/CharAtlasCache.ts +0 -96
  121. package/src/browser/renderer/shared/CharAtlasUtils.ts +0 -75
  122. package/src/browser/renderer/shared/CursorBlinkStateManager.ts +0 -146
  123. package/src/browser/renderer/shared/CustomGlyphs.ts +0 -687
  124. package/src/browser/renderer/shared/DevicePixelObserver.ts +0 -41
  125. package/src/browser/renderer/shared/TextureAtlas.ts +0 -1100
  126. package/src/browser/renderer/shared/Types.d.ts +0 -173
  127. package/src/common/EventEmitter.ts +0 -78
  128. package/src/common/Lifecycle.ts +0 -108
  129. /package/src/browser/selection/{Types.d.ts → Types.ts} +0 -0
  130. /package/src/common/parser/{Types.d.ts → Types.ts} +0 -0
@@ -0,0 +1,49 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+
6
+ import * as browser from 'vs/base/browser/browser';
7
+ import { mainWindow } from 'vs/base/browser/window';
8
+ import * as platform from 'vs/base/common/platform';
9
+
10
+ export const enum KeyboardSupport {
11
+ Always,
12
+ FullScreen,
13
+ None
14
+ }
15
+
16
+ const safeNavigator = typeof navigator === 'object' ? navigator : {} as { [key: string]: any };
17
+
18
+ /**
19
+ * Browser feature we can support in current platform, browser and environment.
20
+ */
21
+ export const BrowserFeatures = {
22
+ clipboard: {
23
+ writeText: (
24
+ platform.isNative
25
+ || (document.queryCommandSupported && document.queryCommandSupported('copy'))
26
+ || !!(safeNavigator && safeNavigator.clipboard && safeNavigator.clipboard.writeText)
27
+ ),
28
+ readText: (
29
+ platform.isNative
30
+ || !!(safeNavigator && safeNavigator.clipboard && safeNavigator.clipboard.readText)
31
+ )
32
+ },
33
+ keyboard: (() => {
34
+ if (platform.isNative || browser.isStandalone()) {
35
+ return KeyboardSupport.Always;
36
+ }
37
+
38
+ if ((<any>safeNavigator).keyboard || browser.isSafari) {
39
+ return KeyboardSupport.FullScreen;
40
+ }
41
+
42
+ return KeyboardSupport.None;
43
+ })(),
44
+
45
+ // 'ontouchstart' in window always evaluates to true with typescript's modern typings. This causes `window` to be
46
+ // `never` later in `window.navigator`. That's why we need the explicit `window as Window` cast
47
+ touch: 'ontouchstart' in mainWindow || safeNavigator.maxTouchPoints > 0,
48
+ pointerEvents: mainWindow.PointerEvent && ('ontouchstart' in mainWindow || navigator.maxTouchPoints > 0)
49
+ };