custom-electron-titlebar 3.2.6 → 3.2.10

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 (239) hide show
  1. package/.github/FUNDING.yml +1 -0
  2. package/README.md +15 -24
  3. package/_config.yml +1 -0
  4. package/{lib → build}/browser/browser.d.ts +0 -0
  5. package/{lib → build}/browser/browser.js +0 -0
  6. package/{lib → build}/browser/browser.js.map +0 -0
  7. package/{lib → build}/browser/event.d.ts +0 -0
  8. package/{lib → build}/browser/event.js +2 -1
  9. package/{lib → build}/browser/event.js.map +1 -1
  10. package/{lib → build}/browser/iframe.d.ts +0 -0
  11. package/{lib → build}/browser/iframe.js +0 -0
  12. package/{lib → build}/browser/iframe.js.map +0 -0
  13. package/{lib → build}/browser/keyboardEvent.d.ts +0 -0
  14. package/{lib → build}/browser/keyboardEvent.js +0 -0
  15. package/{lib → build}/browser/keyboardEvent.js.map +0 -0
  16. package/{lib → build}/browser/mouseEvent.d.ts +0 -0
  17. package/{lib → build}/browser/mouseEvent.js +0 -0
  18. package/{lib → build}/browser/mouseEvent.js.map +0 -0
  19. package/{lib → build}/common/arrays.d.ts +0 -0
  20. package/{lib → build}/common/arrays.js +0 -0
  21. package/{lib → build}/common/arrays.js.map +0 -0
  22. package/{lib → build}/common/async.d.ts +0 -0
  23. package/{lib → build}/common/async.js +0 -0
  24. package/{lib → build}/common/async.js.map +0 -0
  25. package/{lib → build}/common/charCode.d.ts +0 -0
  26. package/{lib → build}/common/charCode.js +0 -0
  27. package/{lib → build}/common/charCode.js.map +0 -0
  28. package/{lib → build}/common/color.d.ts +0 -0
  29. package/{lib → build}/common/color.js +0 -0
  30. package/{lib → build}/common/color.js.map +0 -0
  31. package/{lib → build}/common/dom.d.ts +0 -0
  32. package/{lib → build}/common/dom.js +16 -14
  33. package/build/common/dom.js.map +1 -0
  34. package/{lib → build}/common/event.d.ts +0 -0
  35. package/{lib → build}/common/event.js +1 -1
  36. package/build/common/event.js.map +1 -0
  37. package/{lib → build}/common/iterator.d.ts +0 -0
  38. package/{lib → build}/common/iterator.js +0 -0
  39. package/{lib → build}/common/iterator.js.map +0 -0
  40. package/{lib → build}/common/keyCodes.d.ts +0 -0
  41. package/{lib → build}/common/keyCodes.js +0 -0
  42. package/{lib → build}/common/keyCodes.js.map +0 -0
  43. package/{lib → build}/common/lifecycle.d.ts +0 -0
  44. package/{lib → build}/common/lifecycle.js +0 -0
  45. package/{lib → build}/common/lifecycle.js.map +0 -0
  46. package/{lib → build}/common/linkedList.d.ts +0 -0
  47. package/{lib → build}/common/linkedList.js +0 -0
  48. package/{lib → build}/common/linkedList.js.map +0 -0
  49. package/{lib → build}/common/platform.d.ts +0 -0
  50. package/{lib → build}/common/platform.js +0 -0
  51. package/{lib → build}/common/platform.js.map +0 -0
  52. package/{lib → build}/index.d.ts +0 -0
  53. package/{lib → build}/index.js +0 -0
  54. package/{lib → build}/index.js.map +0 -0
  55. package/{lib → build}/menu/menu.d.ts +0 -0
  56. package/{lib → build}/menu/menu.js +38 -38
  57. package/build/menu/menu.js.map +1 -0
  58. package/{lib → build}/menu/menuitem.d.ts +10 -2
  59. package/{lib → build}/menu/menuitem.js +70 -34
  60. package/build/menu/menuitem.js.map +1 -0
  61. package/{lib → build}/menubar.d.ts +0 -0
  62. package/{lib → build}/menubar.js +29 -30
  63. package/build/menubar.js.map +1 -0
  64. package/{lib → build}/themebar.d.ts +0 -0
  65. package/{lib → build}/themebar.js +2 -2
  66. package/build/themebar.js.map +1 -0
  67. package/{lib → build}/titlebar.d.ts +0 -0
  68. package/{lib → build}/titlebar.js +61 -58
  69. package/build/titlebar.js.map +1 -0
  70. package/package.json +13 -7
  71. package/lib/common/dom.js.map +0 -1
  72. package/lib/common/enableNativeMenuCommands.d.ts +0 -1
  73. package/lib/common/enableNativeMenuCommands.js +0 -32
  74. package/lib/common/enableNativeMenuCommands.js.map +0 -1
  75. package/lib/common/event.js.map +0 -1
  76. package/lib/main.d.ts +0 -1
  77. package/lib/main.js +0 -14
  78. package/lib/main.js.map +0 -1
  79. package/lib/menu/menu.js.map +0 -1
  80. package/lib/menu/menuitem.js.map +0 -1
  81. package/lib/menubar.js.map +0 -1
  82. package/lib/themebar.js.map +0 -1
  83. package/lib/titlebar.js.map +0 -1
  84. package/lib/vs/base/browser/browser.js +0 -150
  85. package/lib/vs/base/browser/canIUse.js +0 -58
  86. package/lib/vs/base/browser/codicons.js +0 -37
  87. package/lib/vs/base/browser/contextmenu.js +0 -9
  88. package/lib/vs/base/browser/dnd.js +0 -113
  89. package/lib/vs/base/browser/dom.js +0 -1417
  90. package/lib/vs/base/browser/event.js +0 -36
  91. package/lib/vs/base/browser/fastDomNode.js +0 -265
  92. package/lib/vs/base/browser/formattedTextRenderer.js +0 -248
  93. package/lib/vs/base/browser/globalMouseMoveMonitor.js +0 -137
  94. package/lib/vs/base/browser/history.js +0 -9
  95. package/lib/vs/base/browser/iframe.js +0 -126
  96. package/lib/vs/base/browser/keyboardEvent.js +0 -599
  97. package/lib/vs/base/browser/mouseEvent.js +0 -155
  98. package/lib/vs/base/browser/touch.js +0 -315
  99. package/lib/vs/base/browser/ui/actionbar/actionViewItems.js +0 -397
  100. package/lib/vs/base/browser/ui/actionbar/actionbar.js +0 -583
  101. package/lib/vs/base/browser/ui/checkbox/checkbox.js +0 -251
  102. package/lib/vs/base/browser/ui/codicons/codiconLabel.js +0 -31
  103. package/lib/vs/base/browser/ui/codicons/codiconStyles.js +0 -47
  104. package/lib/vs/base/browser/ui/contextview/contextview.js +0 -367
  105. package/lib/vs/base/browser/ui/dropdown/dropdown.js +0 -256
  106. package/lib/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +0 -120
  107. package/lib/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +0 -118
  108. package/lib/vs/base/browser/ui/list/list.js +0 -54
  109. package/lib/vs/base/browser/ui/list/listPaging.js +0 -322
  110. package/lib/vs/base/browser/ui/list/listView.js +0 -1388
  111. package/lib/vs/base/browser/ui/list/listWidget.js +0 -1709
  112. package/lib/vs/base/browser/ui/list/rangeMap.js +0 -223
  113. package/lib/vs/base/browser/ui/list/rowCache.js +0 -113
  114. package/lib/vs/base/browser/ui/list/splice.js +0 -23
  115. package/lib/vs/base/browser/ui/menu/menu.js +0 -1371
  116. package/lib/vs/base/browser/ui/menu/menubar.js +0 -1139
  117. package/lib/vs/base/browser/ui/scrollbar/abstractScrollbar.js +0 -278
  118. package/lib/vs/base/browser/ui/scrollbar/horizontalScrollbar.js +0 -115
  119. package/lib/vs/base/browser/ui/scrollbar/scrollableElement.js +0 -646
  120. package/lib/vs/base/browser/ui/scrollbar/scrollableElementOptions.js +0 -9
  121. package/lib/vs/base/browser/ui/scrollbar/scrollbarArrow.js +0 -106
  122. package/lib/vs/base/browser/ui/scrollbar/scrollbarState.js +0 -184
  123. package/lib/vs/base/browser/ui/scrollbar/scrollbarVisibilityController.js +0 -116
  124. package/lib/vs/base/browser/ui/scrollbar/verticalScrollbar.js +0 -114
  125. package/lib/vs/base/browser/ui/selectBox/selectBox.js +0 -85
  126. package/lib/vs/base/browser/ui/selectBox/selectBoxCustom.js +0 -985
  127. package/lib/vs/base/browser/ui/selectBox/selectBoxNative.js +0 -188
  128. package/lib/vs/base/browser/ui/toolbar/toolbar.js +0 -206
  129. package/lib/vs/base/browser/ui/widget.js +0 -69
  130. package/lib/vs/base/common/actions.js +0 -224
  131. package/lib/vs/base/common/amd.js +0 -31
  132. package/lib/vs/base/common/arrays.js +0 -641
  133. package/lib/vs/base/common/assert.js +0 -21
  134. package/lib/vs/base/common/async.js +0 -966
  135. package/lib/vs/base/common/buffer.js +0 -250
  136. package/lib/vs/base/common/cache.js +0 -40
  137. package/lib/vs/base/common/cancellation.js +0 -146
  138. package/lib/vs/base/common/charCode.js +0 -9
  139. package/lib/vs/base/common/codicon.js +0 -136
  140. package/lib/vs/base/common/codicons.js +0 -1378
  141. package/lib/vs/base/common/collections.js +0 -133
  142. package/lib/vs/base/common/color.js +0 -716
  143. package/lib/vs/base/common/comparers.js +0 -280
  144. package/lib/vs/base/common/console.js +0 -142
  145. package/lib/vs/base/common/date.js +0 -113
  146. package/lib/vs/base/common/decorators.js +0 -169
  147. package/lib/vs/base/common/errorMessage.js +0 -93
  148. package/lib/vs/base/common/errors.js +0 -213
  149. package/lib/vs/base/common/errorsWithActions.js +0 -28
  150. package/lib/vs/base/common/event.js +0 -873
  151. package/lib/vs/base/common/extpath.js +0 -401
  152. package/lib/vs/base/common/filters.js +0 -948
  153. package/lib/vs/base/common/functional.js +0 -28
  154. package/lib/vs/base/common/fuzzyScorer.js +0 -811
  155. package/lib/vs/base/common/glob.js +0 -696
  156. package/lib/vs/base/common/hash.js +0 -359
  157. package/lib/vs/base/common/history.js +0 -116
  158. package/lib/vs/base/common/htmlContent.js +0 -162
  159. package/lib/vs/base/common/idGenerator.js +0 -25
  160. package/lib/vs/base/common/iterator.js +0 -118
  161. package/lib/vs/base/common/json.js +0 -1624
  162. package/lib/vs/base/common/jsonEdit.js +0 -272
  163. package/lib/vs/base/common/jsonErrorMessages.js +0 -69
  164. package/lib/vs/base/common/jsonFormatter.js +0 -316
  165. package/lib/vs/base/common/jsonSchema.js +0 -9
  166. package/lib/vs/base/common/keyCodes.js +0 -591
  167. package/lib/vs/base/common/keybindingLabels.js +0 -231
  168. package/lib/vs/base/common/keybindingParser.js +0 -142
  169. package/lib/vs/base/common/labels.js +0 -430
  170. package/lib/vs/base/common/lazy.js +0 -71
  171. package/lib/vs/base/common/lifecycle.js +0 -308
  172. package/lib/vs/base/common/linkedList.js +0 -152
  173. package/lib/vs/base/common/linkedText.js +0 -73
  174. package/lib/vs/base/common/map.js +0 -1108
  175. package/lib/vs/base/common/marshalling.js +0 -80
  176. package/lib/vs/base/common/mime.js +0 -321
  177. package/lib/vs/base/common/navigator.js +0 -50
  178. package/lib/vs/base/common/network.js +0 -160
  179. package/lib/vs/base/common/normalization.js +0 -78
  180. package/lib/vs/base/common/numbers.js +0 -55
  181. package/lib/vs/base/common/objects.js +0 -268
  182. package/lib/vs/base/common/paging.js +0 -190
  183. package/lib/vs/base/common/parsers.js +0 -78
  184. package/lib/vs/base/common/path.js +0 -1550
  185. package/lib/vs/base/common/platform.js +0 -245
  186. package/lib/vs/base/common/process.js +0 -52
  187. package/lib/vs/base/common/processes.js +0 -32
  188. package/lib/vs/base/common/range.js +0 -79
  189. package/lib/vs/base/common/resourceTree.js +0 -185
  190. package/lib/vs/base/common/resources.js +0 -421
  191. package/lib/vs/base/common/scanCode.js +0 -1472
  192. package/lib/vs/base/common/scrollable.js +0 -397
  193. package/lib/vs/base/common/search.js +0 -55
  194. package/lib/vs/base/common/sequence.js +0 -64
  195. package/lib/vs/base/common/severity.js +0 -55
  196. package/lib/vs/base/common/skipList.js +0 -234
  197. package/lib/vs/base/common/stopwatch.js +0 -45
  198. package/lib/vs/base/common/stream.js +0 -418
  199. package/lib/vs/base/common/strings.js +0 -1283
  200. package/lib/vs/base/common/styler.js +0 -9
  201. package/lib/vs/base/common/types.js +0 -296
  202. package/lib/vs/base/common/uint.js +0 -46
  203. package/lib/vs/base/common/uri.js +0 -756
  204. package/lib/vs/base/common/uriIpc.js +0 -154
  205. package/lib/vs/base/common/uuid.js +0 -70
  206. package/lib/vs/nls.mock.js +0 -31
  207. package/lib/vs/platform/actions/browser/menuEntryActionViewItem.js +0 -342
  208. package/lib/vs/platform/actions/common/actions.js +0 -456
  209. package/lib/vs/platform/actions/common/menuService.js +0 -194
  210. package/lib/vs/platform/clipboard/browser/clipboardService.js +0 -99
  211. package/lib/vs/platform/clipboard/common/clipboardService.js +0 -14
  212. package/lib/vs/platform/contextkey/common/contextkey.js +0 -1210
  213. package/lib/vs/platform/contextkey/common/contextkeys.js +0 -23
  214. package/lib/vs/platform/contextview/browser/contextView.js +0 -15
  215. package/lib/vs/platform/contextview/browser/contextViewService.js +0 -96
  216. package/lib/vs/platform/environment/common/argv.js +0 -9
  217. package/lib/vs/platform/environment/common/environment.js +0 -15
  218. package/lib/vs/platform/instantiation/common/descriptors.js +0 -25
  219. package/lib/vs/platform/instantiation/common/extensions.js +0 -26
  220. package/lib/vs/platform/instantiation/common/graph.js +0 -93
  221. package/lib/vs/platform/instantiation/common/instantiation.js +0 -84
  222. package/lib/vs/platform/instantiation/common/instantiationService.js +0 -361
  223. package/lib/vs/platform/instantiation/common/serviceCollection.js +0 -39
  224. package/lib/vs/platform/keybinding/common/baseResolvedKeybinding.js +0 -73
  225. package/lib/vs/platform/keybinding/common/keybinding.js +0 -14
  226. package/lib/vs/platform/keybinding/common/keybindingResolver.js +0 -391
  227. package/lib/vs/platform/keybinding/common/keybindingsRegistry.js +0 -229
  228. package/lib/vs/platform/keybinding/common/resolvedKeybindingItem.js +0 -47
  229. package/lib/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js +0 -160
  230. package/lib/vs/platform/layout/browser/layoutService.js +0 -14
  231. package/lib/vs/platform/menubar/common/menubar.js +0 -34
  232. package/lib/vs/platform/registry/common/platform.js +0 -38
  233. package/lib/vs/platform/theme/browser/checkbox.js +0 -32
  234. package/lib/vs/platform/theme/common/colorRegistry.js +0 -1154
  235. package/lib/vs/platform/theme/common/styler.js +0 -290
  236. package/lib/vs/platform/theme/common/theme.js +0 -21
  237. package/lib/vs/platform/theme/common/themeService.js +0 -176
  238. package/lib/vs/platform/theme/common/tokenClassificationRegistry.js +0 -540
  239. package/lib/vs/platform/theme/test/common/testThemeService.js +0 -98
@@ -37,7 +37,7 @@ class CETMenu extends lifecycle_1.Disposable {
37
37
  this.items = [];
38
38
  this.focusedItem = undefined;
39
39
  this.mnemonics = new Map();
40
- this._register(dom_1.addDisposableListener(this.menuContainer, dom_1.EventType.KEY_DOWN, e => {
40
+ this._register((0, dom_1.addDisposableListener)(this.menuContainer, dom_1.EventType.KEY_DOWN, e => {
41
41
  const event = new keyboardEvent_1.StandardKeyboardEvent(e);
42
42
  let eventHandled = true;
43
43
  if (event.equals(16 /* UpArrow */)) {
@@ -63,7 +63,7 @@ class CETMenu extends lifecycle_1.Disposable {
63
63
  event.stopPropagation();
64
64
  }
65
65
  }));
66
- this._register(dom_1.addDisposableListener(this.menuContainer, dom_1.EventType.KEY_UP, e => {
66
+ this._register((0, dom_1.addDisposableListener)(this.menuContainer, dom_1.EventType.KEY_UP, e => {
67
67
  const event = new keyboardEvent_1.StandardKeyboardEvent(e);
68
68
  // Run action on Enter/Space
69
69
  if (this.isTriggerKeyEvent(event)) {
@@ -79,7 +79,7 @@ class CETMenu extends lifecycle_1.Disposable {
79
79
  }
80
80
  }));
81
81
  if (options.enableMnemonics) {
82
- this._register(dom_1.addDisposableListener(this.menuContainer, dom_1.EventType.KEY_DOWN, (e) => {
82
+ this._register((0, dom_1.addDisposableListener)(this.menuContainer, dom_1.EventType.KEY_DOWN, (e) => {
83
83
  const key = keyCodes_1.KeyCodeUtils.fromString(e.key);
84
84
  if (this.mnemonics.has(key)) {
85
85
  const items = this.mnemonics.get(key);
@@ -101,7 +101,7 @@ class CETMenu extends lifecycle_1.Disposable {
101
101
  }));
102
102
  }
103
103
  if (platform_1.isLinux) {
104
- this._register(dom_1.addDisposableListener(this.menuContainer, dom_1.EventType.KEY_DOWN, e => {
104
+ this._register((0, dom_1.addDisposableListener)(this.menuContainer, dom_1.EventType.KEY_DOWN, e => {
105
105
  const event = new keyboardEvent_1.StandardKeyboardEvent(e);
106
106
  if (event.equals(14 /* Home */) || event.equals(11 /* PageUp */)) {
107
107
  this.focusedItem = this.items.length - 1;
@@ -115,27 +115,27 @@ class CETMenu extends lifecycle_1.Disposable {
115
115
  }
116
116
  }));
117
117
  }
118
- this._register(dom_1.addDisposableListener(this.menuContainer, dom_1.EventType.MOUSE_OUT, e => {
118
+ this._register((0, dom_1.addDisposableListener)(this.menuContainer, dom_1.EventType.MOUSE_OUT, e => {
119
119
  let relatedTarget = e.relatedTarget;
120
- if (!dom_1.isAncestor(relatedTarget, this.menuContainer)) {
120
+ if (!(0, dom_1.isAncestor)(relatedTarget, this.menuContainer)) {
121
121
  this.focusedItem = undefined;
122
122
  this.updateFocus();
123
123
  e.stopPropagation();
124
124
  }
125
125
  }));
126
- this._register(dom_1.addDisposableListener(this.menuContainer, dom_1.EventType.MOUSE_UP, e => {
126
+ this._register((0, dom_1.addDisposableListener)(this.menuContainer, dom_1.EventType.MOUSE_UP, e => {
127
127
  // Absorb clicks in menu dead space https://github.com/Microsoft/vscode/issues/63575
128
128
  dom_1.EventHelper.stop(e, true);
129
129
  }));
130
- this._register(dom_1.addDisposableListener(this.menuContainer, dom_1.EventType.MOUSE_OVER, e => {
130
+ this._register((0, dom_1.addDisposableListener)(this.menuContainer, dom_1.EventType.MOUSE_OVER, e => {
131
131
  let target = e.target;
132
- if (!target || !dom_1.isAncestor(target, this.menuContainer) || target === this.menuContainer) {
132
+ if (!target || !(0, dom_1.isAncestor)(target, this.menuContainer) || target === this.menuContainer) {
133
133
  return;
134
134
  }
135
135
  while (target.parentElement !== this.menuContainer && target.parentElement !== null) {
136
136
  target = target.parentElement;
137
137
  }
138
- if (dom_1.hasClass(target, 'action-item')) {
138
+ if ((0, dom_1.hasClass)(target, 'action-item')) {
139
139
  const lastFocusedItem = this.focusedItem;
140
140
  this.setFocusedItem(target);
141
141
  if (lastFocusedItem !== this.focusedItem) {
@@ -169,7 +169,7 @@ class CETMenu extends lifecycle_1.Disposable {
169
169
  updateFocusedItem() {
170
170
  for (let i = 0; i < this.menuContainer.children.length; i++) {
171
171
  const elem = this.menuContainer.children[i];
172
- if (dom_1.isAncestor(document.activeElement, elem)) {
172
+ if ((0, dom_1.isAncestor)(document.activeElement, elem)) {
173
173
  this.focusedItem = i;
174
174
  break;
175
175
  }
@@ -184,7 +184,7 @@ class CETMenu extends lifecycle_1.Disposable {
184
184
  itemElement.className = 'action-item';
185
185
  itemElement.setAttribute('role', 'presentation');
186
186
  // Prevent native context menu on actions
187
- this._register(dom_1.addDisposableListener(itemElement, dom_1.EventType.CONTEXT_MENU, (e) => {
187
+ this._register((0, dom_1.addDisposableListener)(itemElement, dom_1.EventType.CONTEXT_MENU, (e) => {
188
188
  e.preventDefault();
189
189
  e.stopPropagation();
190
190
  }));
@@ -194,7 +194,7 @@ class CETMenu extends lifecycle_1.Disposable {
194
194
  }
195
195
  else if (menuItem.type === 'submenu' || menuItem.submenu) {
196
196
  const submenuItems = menuItem.submenu.items;
197
- item = new Submenu(menuItem, submenuItems, this.parentData, this.options);
197
+ item = new Submenu(menuItem, submenuItems, this.parentData, this.options, this.closeSubMenu);
198
198
  if (this.options.enableMnemonics) {
199
199
  const mnemonic = item.getMnemonic();
200
200
  if (mnemonic && item.isEnabled()) {
@@ -209,7 +209,7 @@ class CETMenu extends lifecycle_1.Disposable {
209
209
  }
210
210
  else {
211
211
  const menuItemOptions = { enableMnemonics: this.options.enableMnemonics };
212
- item = new menuitem_1.CETMenuItem(menuItem, menuItemOptions, this.closeSubMenu);
212
+ item = new menuitem_1.CETMenuItem(menuItem, menuItemOptions, this.closeSubMenu, this.items);
213
213
  if (this.options.enableMnemonics) {
214
214
  const mnemonic = item.getMnemonic();
215
215
  if (mnemonic && item.isEnabled()) {
@@ -320,9 +320,9 @@ class CETMenu extends lifecycle_1.Disposable {
320
320
  this._onDidCancel.fire();
321
321
  }
322
322
  dispose() {
323
- lifecycle_1.dispose(this.items);
323
+ (0, lifecycle_1.dispose)(this.items);
324
324
  this.items = [];
325
- dom_1.removeNode(this.getContainer());
325
+ (0, dom_1.removeNode)(this.getContainer());
326
326
  super.dispose();
327
327
  }
328
328
  style(style) {
@@ -355,8 +355,8 @@ class CETMenu extends lifecycle_1.Disposable {
355
355
  }
356
356
  exports.CETMenu = CETMenu;
357
357
  class Submenu extends menuitem_1.CETMenuItem {
358
- constructor(item, submenuItems, parentData, submenuOptions) {
359
- super(item, submenuOptions);
358
+ constructor(item, submenuItems, parentData, submenuOptions, closeSubMenu = () => { }) {
359
+ super(item, submenuOptions, closeSubMenu);
360
360
  this.submenuItems = submenuItems;
361
361
  this.parentData = parentData;
362
362
  this.submenuOptions = submenuOptions;
@@ -368,7 +368,7 @@ class Submenu extends menuitem_1.CETMenuItem {
368
368
  }
369
369
  }, 250);
370
370
  this.hideScheduler = new async_1.RunOnceScheduler(() => {
371
- if (this.container && (!dom_1.isAncestor(document.activeElement, this.container) && this.parentData.submenu === this.mysubmenu)) {
371
+ if (this.container && (!(0, dom_1.isAncestor)(document.activeElement, this.container) && this.parentData.submenu === this.mysubmenu)) {
372
372
  this.parentData.parent.focus(false);
373
373
  this.cleanupExistingSubmenu(true);
374
374
  }
@@ -379,34 +379,34 @@ class Submenu extends menuitem_1.CETMenuItem {
379
379
  if (!this.itemElement) {
380
380
  return;
381
381
  }
382
- dom_1.addClass(this.itemElement, 'submenu-item');
382
+ (0, dom_1.addClass)(this.itemElement, 'submenu-item');
383
383
  this.itemElement.setAttribute('aria-haspopup', 'true');
384
- this.submenuIndicator = dom_1.append(this.itemElement, dom_1.$('span.submenu-indicator'));
384
+ this.submenuIndicator = (0, dom_1.append)(this.itemElement, (0, dom_1.$)('span.submenu-indicator'));
385
385
  this.submenuIndicator.setAttribute('aria-hidden', 'true');
386
- this._register(dom_1.addDisposableListener(this.container, dom_1.EventType.KEY_UP, e => {
386
+ this._register((0, dom_1.addDisposableListener)(this.container, dom_1.EventType.KEY_UP, e => {
387
387
  let event = new keyboardEvent_1.StandardKeyboardEvent(e);
388
388
  if (event.equals(17 /* RightArrow */) || event.equals(3 /* Enter */)) {
389
389
  dom_1.EventHelper.stop(e, true);
390
390
  this.createSubmenu(true);
391
391
  }
392
392
  }));
393
- this._register(dom_1.addDisposableListener(this.container, dom_1.EventType.KEY_DOWN, e => {
393
+ this._register((0, dom_1.addDisposableListener)(this.container, dom_1.EventType.KEY_DOWN, e => {
394
394
  let event = new keyboardEvent_1.StandardKeyboardEvent(e);
395
395
  if (event.equals(17 /* RightArrow */) || event.equals(3 /* Enter */)) {
396
396
  dom_1.EventHelper.stop(e, true);
397
397
  }
398
398
  }));
399
- this._register(dom_1.addDisposableListener(this.container, dom_1.EventType.MOUSE_OVER, e => {
399
+ this._register((0, dom_1.addDisposableListener)(this.container, dom_1.EventType.MOUSE_OVER, e => {
400
400
  if (!this.mouseOver) {
401
401
  this.mouseOver = true;
402
402
  this.showScheduler.schedule();
403
403
  }
404
404
  }));
405
- this._register(dom_1.addDisposableListener(this.container, dom_1.EventType.MOUSE_LEAVE, e => {
405
+ this._register((0, dom_1.addDisposableListener)(this.container, dom_1.EventType.MOUSE_LEAVE, e => {
406
406
  this.mouseOver = false;
407
407
  }));
408
- this._register(dom_1.addDisposableListener(this.container, dom_1.EventType.FOCUS_OUT, e => {
409
- if (this.container && !dom_1.isAncestor(document.activeElement, this.container)) {
408
+ this._register((0, dom_1.addDisposableListener)(this.container, dom_1.EventType.FOCUS_OUT, e => {
409
+ if (this.container && !(0, dom_1.isAncestor)(document.activeElement, this.container)) {
410
410
  this.hideScheduler.schedule();
411
411
  }
412
412
  }));
@@ -431,9 +431,9 @@ class Submenu extends menuitem_1.CETMenuItem {
431
431
  return;
432
432
  }
433
433
  if (!this.parentData.submenu) {
434
- this.submenuContainer = dom_1.append(this.container, dom_1.$('ul.submenu'));
435
- dom_1.addClasses(this.submenuContainer, 'menubar-menu-container');
436
- this.parentData.submenu = new CETMenu(this.submenuContainer, this.submenuOptions);
434
+ this.submenuContainer = (0, dom_1.append)(this.container, (0, dom_1.$)('ul.submenu'));
435
+ (0, dom_1.addClasses)(this.submenuContainer, 'menubar-menu-container');
436
+ this.parentData.submenu = new CETMenu(this.submenuContainer, this.submenuOptions, this.closeSubMenu);
437
437
  this.parentData.submenu.createMenu(this.submenuItems);
438
438
  if (this.menuStyle) {
439
439
  this.parentData.submenu.style(this.menuStyle);
@@ -450,7 +450,7 @@ class Submenu extends menuitem_1.CETMenuItem {
450
450
  this.submenuContainer.style.left = `${this.container.offsetWidth}px`;
451
451
  this.submenuContainer.style.top = `${this.container.offsetTop - paddingTop}px`;
452
452
  }
453
- this.submenuDisposables.push(dom_1.addDisposableListener(this.submenuContainer, dom_1.EventType.KEY_UP, e => {
453
+ this.submenuDisposables.push((0, dom_1.addDisposableListener)(this.submenuContainer, dom_1.EventType.KEY_UP, e => {
454
454
  let event = new keyboardEvent_1.StandardKeyboardEvent(e);
455
455
  if (event.equals(15 /* LeftArrow */)) {
456
456
  dom_1.EventHelper.stop(e, true);
@@ -459,11 +459,11 @@ class Submenu extends menuitem_1.CETMenuItem {
459
459
  this.parentData.submenu.dispose();
460
460
  this.parentData.submenu = undefined;
461
461
  }
462
- this.submenuDisposables = lifecycle_1.dispose(this.submenuDisposables);
462
+ this.submenuDisposables = (0, lifecycle_1.dispose)(this.submenuDisposables);
463
463
  this.submenuContainer = undefined;
464
464
  }
465
465
  }));
466
- this.submenuDisposables.push(dom_1.addDisposableListener(this.submenuContainer, dom_1.EventType.KEY_DOWN, e => {
466
+ this.submenuDisposables.push((0, dom_1.addDisposableListener)(this.submenuContainer, dom_1.EventType.KEY_DOWN, e => {
467
467
  let event = new keyboardEvent_1.StandardKeyboardEvent(e);
468
468
  if (event.equals(15 /* LeftArrow */)) {
469
469
  dom_1.EventHelper.stop(e, true);
@@ -475,7 +475,7 @@ class Submenu extends menuitem_1.CETMenuItem {
475
475
  this.parentData.submenu.dispose();
476
476
  this.parentData.submenu = undefined;
477
477
  }
478
- this.submenuDisposables = lifecycle_1.dispose(this.submenuDisposables);
478
+ this.submenuDisposables = (0, lifecycle_1.dispose)(this.submenuDisposables);
479
479
  this.submenuContainer = undefined;
480
480
  }));
481
481
  this.parentData.submenu.focus(selectFirstItem);
@@ -490,7 +490,7 @@ class Submenu extends menuitem_1.CETMenuItem {
490
490
  if (!this.menuStyle) {
491
491
  return;
492
492
  }
493
- const isSelected = this.container && dom_1.hasClass(this.container, 'focused');
493
+ const isSelected = this.container && (0, dom_1.hasClass)(this.container, 'focused');
494
494
  const fgColor = isSelected && this.menuStyle.selectionForegroundColor ? this.menuStyle.selectionForegroundColor : this.menuStyle.foregroundColor;
495
495
  this.submenuIndicator.style.backgroundColor = fgColor ? `${fgColor}` : null;
496
496
  if (this.parentData.submenu) {
@@ -505,7 +505,7 @@ class Submenu extends menuitem_1.CETMenuItem {
505
505
  this.mysubmenu = null;
506
506
  }
507
507
  if (this.submenuContainer) {
508
- this.submenuDisposables = lifecycle_1.dispose(this.submenuDisposables);
508
+ this.submenuDisposables = (0, lifecycle_1.dispose)(this.submenuDisposables);
509
509
  this.submenuContainer = undefined;
510
510
  }
511
511
  }
@@ -516,9 +516,9 @@ class Separator extends menuitem_1.CETMenuItem {
516
516
  }
517
517
  render(container) {
518
518
  if (container) {
519
- this.separatorElement = dom_1.append(container, dom_1.$('a.action-label'));
519
+ this.separatorElement = (0, dom_1.append)(container, (0, dom_1.$)('a.action-label'));
520
520
  this.separatorElement.setAttribute('role', 'presentation');
521
- dom_1.addClass(this.separatorElement, 'separator');
521
+ (0, dom_1.addClass)(this.separatorElement, 'separator');
522
522
  }
523
523
  }
524
524
  style(style) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../src/menu/menu.ts"],"names":[],"mappings":"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"}
@@ -17,14 +17,16 @@ export declare class CETMenuItem extends Disposable implements IMenuItem {
17
17
  protected container: HTMLElement;
18
18
  protected itemElement: HTMLElement;
19
19
  private item;
20
+ private radioGroup;
20
21
  private labelElement;
21
22
  private checkElement;
22
23
  private iconElement;
23
24
  private mnemonic;
24
- private closeSubMenu;
25
+ protected closeSubMenu: () => void;
26
+ protected menuContainer: IMenuItem[];
25
27
  private event;
26
28
  private currentWindow;
27
- constructor(item: MenuItem, options?: IMenuOptions, closeSubMenu?: () => void);
29
+ constructor(item: MenuItem, options?: IMenuOptions, closeSubMenu?: () => void, menuContainer?: IMenuItem[]);
28
30
  getContainer(): HTMLElement;
29
31
  getItem(): MenuItem;
30
32
  isEnabled(): boolean;
@@ -40,6 +42,12 @@ export declare class CETMenuItem extends Disposable implements IMenuItem {
40
42
  updateEnabled(): void;
41
43
  updateVisibility(): void;
42
44
  updateChecked(): void;
45
+ updateRadioGroup(): void;
46
+ /** radioGroup index's starts with (previous separator +1 OR menuContainer[0]) and ends with (next separator OR menuContainer[length]) */
47
+ getRadioGroup(): {
48
+ start: number;
49
+ end: number;
50
+ };
43
51
  dispose(): void;
44
52
  getMnemonic(): KeyCode;
45
53
  protected applyStyle(): void;
@@ -11,18 +11,19 @@
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.CETMenuItem = void 0;
13
13
  const dom_1 = require("../common/dom");
14
- const electron_1 = require("electron");
14
+ const remote = require("@electron/remote");
15
15
  const menu_1 = require("./menu");
16
16
  const keyCodes_1 = require("../common/keyCodes");
17
17
  const lifecycle_1 = require("../common/lifecycle");
18
18
  const platform_1 = require("../common/platform");
19
19
  class CETMenuItem extends lifecycle_1.Disposable {
20
- constructor(item, options = {}, closeSubMenu = () => { }) {
20
+ constructor(item, options = {}, closeSubMenu = () => { }, menuContainer = undefined) {
21
21
  super();
22
22
  this.item = item;
23
23
  this.options = options;
24
- this.currentWindow = electron_1.remote.getCurrentWindow();
24
+ this.currentWindow = remote.getCurrentWindow();
25
25
  this.closeSubMenu = closeSubMenu;
26
+ this.menuContainer = menuContainer;
26
27
  // Set mnemonic
27
28
  if (this.item.label && options.enableMnemonics) {
28
29
  let label = this.item.label;
@@ -48,35 +49,35 @@ class CETMenuItem extends lifecycle_1.Disposable {
48
49
  }
49
50
  render(container) {
50
51
  this.container = container;
51
- this._register(dom_1.addDisposableListener(this.container, dom_1.EventType.MOUSE_DOWN, e => {
52
+ this._register((0, dom_1.addDisposableListener)(this.container, dom_1.EventType.MOUSE_DOWN, e => {
52
53
  if (this.item.enabled && e.button === 0 && this.container) {
53
- dom_1.addClass(this.container, 'active');
54
+ (0, dom_1.addClass)(this.container, 'active');
54
55
  }
55
56
  }));
56
- this._register(dom_1.addDisposableListener(this.container, dom_1.EventType.CLICK, e => {
57
+ this._register((0, dom_1.addDisposableListener)(this.container, dom_1.EventType.CLICK, e => {
57
58
  if (this.item.enabled) {
58
59
  this.onClick(e);
59
60
  }
60
61
  }));
61
- this._register(dom_1.addDisposableListener(this.container, dom_1.EventType.DBLCLICK, e => {
62
+ this._register((0, dom_1.addDisposableListener)(this.container, dom_1.EventType.DBLCLICK, e => {
62
63
  dom_1.EventHelper.stop(e, true);
63
64
  }));
64
65
  [dom_1.EventType.MOUSE_UP, dom_1.EventType.MOUSE_OUT].forEach(event => {
65
- this._register(dom_1.addDisposableListener(this.container, event, e => {
66
+ this._register((0, dom_1.addDisposableListener)(this.container, event, e => {
66
67
  dom_1.EventHelper.stop(e);
67
- dom_1.removeClass(this.container, 'active');
68
+ (0, dom_1.removeClass)(this.container, 'active');
68
69
  }));
69
70
  });
70
- this.itemElement = dom_1.append(this.container, dom_1.$('a.action-menu-item'));
71
+ this.itemElement = (0, dom_1.append)(this.container, (0, dom_1.$)('a.action-menu-item'));
71
72
  this.itemElement.setAttribute('role', 'menuitem');
72
73
  if (this.mnemonic) {
73
74
  this.itemElement.setAttribute('aria-keyshortcuts', `${this.mnemonic}`);
74
75
  }
75
- this.checkElement = dom_1.append(this.itemElement, dom_1.$('span.menu-item-check'));
76
+ this.checkElement = (0, dom_1.append)(this.itemElement, (0, dom_1.$)('span.menu-item-check'));
76
77
  this.checkElement.setAttribute('role', 'none');
77
- this.iconElement = dom_1.append(this.itemElement, dom_1.$('span.menu-item-icon'));
78
+ this.iconElement = (0, dom_1.append)(this.itemElement, (0, dom_1.$)('span.menu-item-icon'));
78
79
  this.iconElement.setAttribute('role', 'none');
79
- this.labelElement = dom_1.append(this.itemElement, dom_1.$('span.action-label'));
80
+ this.labelElement = (0, dom_1.append)(this.itemElement, (0, dom_1.$)('span.action-label'));
80
81
  this.setAccelerator();
81
82
  this.updateLabel();
82
83
  this.updateIcon();
@@ -87,31 +88,28 @@ class CETMenuItem extends lifecycle_1.Disposable {
87
88
  }
88
89
  onClick(event) {
89
90
  dom_1.EventHelper.stop(event, true);
90
- if (this.item.role) {
91
- electron_1.ipcRenderer.send('execute-menu-command', {
92
- role: this.item.role
93
- });
94
- }
95
- else if (this.item.click) {
96
- this.item.click(this.item, this.currentWindow, this.event);
97
- }
91
+ this.item.click(this.event, this.currentWindow, this.currentWindow.webContents);
98
92
  if (this.item.type === 'checkbox') {
99
- this.item.checked = !this.item.checked;
100
93
  this.updateChecked();
101
94
  }
102
- this.closeSubMenu();
95
+ else if (this.item.type === 'radio') {
96
+ this.updateRadioGroup();
97
+ }
98
+ else {
99
+ this.closeSubMenu();
100
+ }
103
101
  }
104
102
  focus() {
105
103
  if (this.container) {
106
104
  this.container.focus();
107
- dom_1.addClass(this.container, 'focused');
105
+ (0, dom_1.addClass)(this.container, 'focused');
108
106
  }
109
107
  this.applyStyle();
110
108
  }
111
109
  blur() {
112
110
  if (this.container) {
113
111
  this.container.blur();
114
- dom_1.removeClass(this.container, 'focused');
112
+ (0, dom_1.removeClass)(this.container, 'focused');
115
113
  }
116
114
  this.applyStyle();
117
115
  }
@@ -170,14 +168,14 @@ class CETMenuItem extends lifecycle_1.Disposable {
170
168
  accelerator = this.item.accelerator;
171
169
  }
172
170
  if (accelerator !== null) {
173
- dom_1.append(this.itemElement, dom_1.$('span.keybinding')).textContent = parseAccelerator(accelerator);
171
+ (0, dom_1.append)(this.itemElement, (0, dom_1.$)('span.keybinding')).textContent = parseAccelerator(accelerator);
174
172
  }
175
173
  }
176
174
  updateLabel() {
177
175
  if (this.item.label) {
178
176
  let label = this.item.label;
179
177
  if (label) {
180
- const cleanLabel = menu_1.cleanMnemonic(label);
178
+ const cleanLabel = (0, menu_1.cleanMnemonic)(label);
181
179
  if (!this.options.enableMnemonics) {
182
180
  label = cleanLabel;
183
181
  }
@@ -217,7 +215,7 @@ class CETMenuItem extends lifecycle_1.Disposable {
217
215
  icon = this.item.icon;
218
216
  }
219
217
  if (icon) {
220
- const iconE = dom_1.append(this.iconElement, dom_1.$('img'));
218
+ const iconE = (0, dom_1.append)(this.iconElement, (0, dom_1.$)('img'));
221
219
  iconE.setAttribute('src', icon.toString());
222
220
  }
223
221
  }
@@ -238,11 +236,11 @@ class CETMenuItem extends lifecycle_1.Disposable {
238
236
  }
239
237
  updateEnabled() {
240
238
  if (this.item.enabled && this.item.type !== 'separator') {
241
- dom_1.removeClass(this.container, 'disabled');
239
+ (0, dom_1.removeClass)(this.container, 'disabled');
242
240
  this.container.tabIndex = 0;
243
241
  }
244
242
  else {
245
- dom_1.addClass(this.container, 'disabled');
243
+ (0, dom_1.addClass)(this.container, 'disabled');
246
244
  }
247
245
  }
248
246
  updateVisibility() {
@@ -252,19 +250,57 @@ class CETMenuItem extends lifecycle_1.Disposable {
252
250
  }
253
251
  updateChecked() {
254
252
  if (this.item.checked) {
255
- dom_1.addClass(this.itemElement, 'checked');
253
+ (0, dom_1.addClass)(this.itemElement, 'checked');
256
254
  this.itemElement.setAttribute('role', 'menuitemcheckbox');
257
255
  this.itemElement.setAttribute('aria-checked', 'true');
258
256
  }
259
257
  else {
260
- dom_1.removeClass(this.itemElement, 'checked');
258
+ (0, dom_1.removeClass)(this.itemElement, 'checked');
261
259
  this.itemElement.setAttribute('role', 'menuitem');
262
260
  this.itemElement.setAttribute('aria-checked', 'false');
263
261
  }
264
262
  }
263
+ updateRadioGroup() {
264
+ if (this.radioGroup === undefined) {
265
+ this.radioGroup = this.getRadioGroup();
266
+ }
267
+ for (let i = this.radioGroup.start; i < this.radioGroup.end; i++) {
268
+ const menuItem = this.menuContainer[i];
269
+ if (menuItem instanceof CETMenuItem && menuItem.item.type === 'radio') {
270
+ // updateChecked() *all* radio buttons in group
271
+ menuItem.updateChecked();
272
+ // set the radioGroup property of all the other radio buttons since it was already calculated
273
+ if (menuItem !== this) {
274
+ menuItem.radioGroup = this.radioGroup;
275
+ }
276
+ }
277
+ }
278
+ }
279
+ /** radioGroup index's starts with (previous separator +1 OR menuContainer[0]) and ends with (next separator OR menuContainer[length]) */
280
+ getRadioGroup() {
281
+ let startIndex = 0;
282
+ let endIndex = this.menuContainer.length;
283
+ let found = false;
284
+ for (const index in this.menuContainer) {
285
+ const menuItem = this.menuContainer[index];
286
+ if (menuItem === this) {
287
+ found = true;
288
+ }
289
+ else if (menuItem instanceof CETMenuItem && menuItem.isSeparator()) {
290
+ if (found) {
291
+ endIndex = Number.parseInt(index);
292
+ break;
293
+ }
294
+ else {
295
+ startIndex = Number.parseInt(index) + 1;
296
+ }
297
+ }
298
+ }
299
+ return { start: startIndex, end: endIndex };
300
+ }
265
301
  dispose() {
266
302
  if (this.itemElement) {
267
- dom_1.removeNode(this.itemElement);
303
+ (0, dom_1.removeNode)(this.itemElement);
268
304
  this.itemElement = undefined;
269
305
  }
270
306
  super.dispose();
@@ -276,7 +312,7 @@ class CETMenuItem extends lifecycle_1.Disposable {
276
312
  if (!this.menuStyle) {
277
313
  return;
278
314
  }
279
- const isSelected = this.container && dom_1.hasClass(this.container, 'focused');
315
+ const isSelected = this.container && (0, dom_1.hasClass)(this.container, 'focused');
280
316
  const fgColor = isSelected && this.menuStyle.selectionForegroundColor ? this.menuStyle.selectionForegroundColor : this.menuStyle.foregroundColor;
281
317
  const bgColor = isSelected && this.menuStyle.selectionBackgroundColor ? this.menuStyle.selectionBackgroundColor : this.menuStyle.backgroundColor;
282
318
  this.checkElement.style.backgroundColor = fgColor ? fgColor.toString() : null;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menuitem.js","sourceRoot":"","sources":["../../src/menu/menuitem.ts"],"names":[],"mappings":"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"}
File without changes