monaco-editor-core 0.53.0 → 0.54.0-dev-20250910

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 (81) hide show
  1. package/esm/nls.keys.json +1 -1
  2. package/esm/nls.messages.de.js +2 -2
  3. package/esm/nls.messages.es.js +2 -2
  4. package/esm/nls.messages.fr.js +2 -2
  5. package/esm/nls.messages.it.js +2 -2
  6. package/esm/nls.messages.ja.js +2 -2
  7. package/esm/nls.messages.js +1 -1
  8. package/esm/nls.messages.json +1 -1
  9. package/esm/nls.messages.ko.js +2 -2
  10. package/esm/nls.messages.ru.js +2 -2
  11. package/esm/nls.messages.zh-cn.js +2 -2
  12. package/esm/nls.messages.zh-tw.js +2 -2
  13. package/esm/nls.metadata.json +0 -2
  14. package/esm/vs/base/browser/domSanitize.js +18 -8
  15. package/esm/vs/base/browser/domSanitize.js.map +1 -1
  16. package/esm/vs/base/browser/domStylesheets.js +3 -0
  17. package/esm/vs/base/browser/domStylesheets.js.map +1 -1
  18. package/esm/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  19. package/esm/vs/base/browser/ui/dropdown/dropdown.js +1 -2
  20. package/esm/vs/base/browser/ui/dropdown/dropdown.js.map +1 -1
  21. package/esm/vs/base/common/async.js +6 -173
  22. package/esm/vs/base/common/async.js.map +1 -1
  23. package/esm/vs/base/common/fuzzyScorer.js +6 -3
  24. package/esm/vs/base/common/fuzzyScorer.js.map +1 -1
  25. package/esm/vs/base/common/strings.js +0 -3
  26. package/esm/vs/base/common/strings.js.map +1 -1
  27. package/esm/vs/editor/browser/controller/editContext/native/screenReaderContentRich.js +23 -13
  28. package/esm/vs/editor/browser/controller/editContext/native/screenReaderContentRich.js.map +1 -1
  29. package/esm/vs/editor/browser/services/hoverService/hover.css +1 -1
  30. package/esm/vs/editor/common/config/editorOptions.js +1 -1
  31. package/esm/vs/editor/common/config/editorOptions.js.map +1 -1
  32. package/esm/vs/editor/common/viewModel/screenReaderSimpleModel.js.map +1 -1
  33. package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +9 -4
  34. package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js.map +1 -1
  35. package/esm/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js +2 -2
  36. package/esm/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js.map +1 -1
  37. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +15 -10
  38. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js.map +1 -1
  39. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/view.css +13 -4
  40. package/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js +5 -4
  41. package/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js.map +1 -1
  42. package/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +1 -1
  43. package/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js.map +1 -1
  44. package/esm/vs/platform/actionWidget/browser/actionList.js +2 -2
  45. package/esm/vs/platform/actionWidget/browser/actionList.js.map +1 -1
  46. package/esm/vs/platform/actionWidget/browser/actionWidget.css +11 -12
  47. package/esm/vs/platform/actions/browser/actionViewItemService.js.map +1 -1
  48. package/esm/vs/platform/actions/browser/toolbar.js +3 -3
  49. package/esm/vs/platform/actions/browser/toolbar.js.map +1 -1
  50. package/esm/vs/platform/contextkey/common/contextkeys.js +1 -2
  51. package/esm/vs/platform/contextkey/common/contextkeys.js.map +1 -1
  52. package/esm/vs/platform/contextkey/common/scanner.js +5 -5
  53. package/esm/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  54. package/esm/vs/platform/keybinding/common/abstractKeybindingService.js +4 -4
  55. package/esm/vs/platform/list/browser/listService.js +27 -27
  56. package/esm/vs/platform/markers/common/markerService.js +2 -2
  57. package/esm/vs/platform/markers/common/markers.js +6 -6
  58. package/esm/vs/platform/quickinput/browser/commandsQuickAccess.js +7 -7
  59. package/esm/vs/platform/quickinput/browser/helpQuickAccess.js +1 -1
  60. package/esm/vs/platform/quickinput/browser/quickInput.js +10 -10
  61. package/esm/vs/platform/quickinput/browser/quickInputActions.js +3 -3
  62. package/esm/vs/platform/quickinput/browser/quickInputController.js +6 -6
  63. package/esm/vs/platform/quickinput/browser/quickInputList.js +1 -1
  64. package/esm/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  65. package/esm/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
  66. package/esm/vs/platform/theme/common/colorUtils.js +2 -2
  67. package/esm/vs/platform/theme/common/colors/baseColors.js +17 -17
  68. package/esm/vs/platform/theme/common/colors/chartsColors.js +8 -8
  69. package/esm/vs/platform/theme/common/colors/editorColors.js +95 -95
  70. package/esm/vs/platform/theme/common/colors/inputColors.js +47 -47
  71. package/esm/vs/platform/theme/common/colors/listColors.js +36 -36
  72. package/esm/vs/platform/theme/common/colors/menuColors.js +7 -7
  73. package/esm/vs/platform/theme/common/colors/minimapColors.js +11 -11
  74. package/esm/vs/platform/theme/common/colors/miscColors.js +15 -15
  75. package/esm/vs/platform/theme/common/colors/quickpickColors.js +9 -9
  76. package/esm/vs/platform/theme/common/colors/searchColors.js +3 -3
  77. package/esm/vs/platform/theme/common/iconRegistry.js +6 -6
  78. package/esm/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  79. package/esm/vs/platform/workspace/common/workspace.js +1 -1
  80. package/package.json +2 -2
  81. package/version.txt +1 -1
@@ -1,3 +1,7 @@
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
+ *--------------------------------------------------------------------------------------------*/
1
5
  /*---------------------------------------------------------------------------------------------
2
6
  * Copyright (c) Microsoft Corporation. All rights reserved.
3
7
  * Licensed under the MIT License. See License.txt in the project root for license information.
@@ -25,7 +29,7 @@ import { IContextKeyService } from '../../../../../../../platform/contextkey/com
25
29
  import { nativeHoverDelegate } from '../../../../../../../platform/hover/browser/hover.js';
26
30
  import { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js';
27
31
  import { defaultKeybindingLabelStyles } from '../../../../../../../platform/theme/browser/defaultStyles.js';
28
- import { asCssVariable, descriptionForeground, editorActionListForeground, editorHoverBorder, keybindingLabelBackground } from '../../../../../../../platform/theme/common/colorRegistry.js';
32
+ import { asCssVariable, descriptionForeground, editorActionListForeground, editorHoverBorder } from '../../../../../../../platform/theme/common/colorRegistry.js';
29
33
  import { hideInlineCompletionId, inlineSuggestCommitId, toggleShowCollapsedId } from '../../../controller/commandIds.js';
30
34
  let GutterIndicatorMenuContent = class GutterIndicatorMenuContent {
31
35
  constructor(_model, _close, _editorObs, _contextKeyService, _keybindingService, _commandService) {
@@ -98,7 +102,7 @@ let GutterIndicatorMenuContent = class GutterIndicatorMenuContent {
98
102
  const actions = this._model.action ? [this._model.action] : [];
99
103
  const actionBarFooter = actions.length > 0 ? actionBar(actions.map(action => ({
100
104
  id: action.id,
101
- label: action.title,
105
+ label: action.title + '...',
102
106
  enabled: true,
103
107
  run: () => this._commandService.executeCommand(action.id, ...(action.arguments ?? [])),
104
108
  class: undefined,
@@ -109,8 +113,8 @@ let GutterIndicatorMenuContent = class GutterIndicatorMenuContent {
109
113
  gotoAndAccept,
110
114
  reject,
111
115
  toggleCollapsedMode,
112
- settings,
113
116
  extensionCommands.length ? separator() : undefined,
117
+ settings,
114
118
  ...extensionCommands,
115
119
  actionBarFooter ? separator() : undefined,
116
120
  actionBarFooter
@@ -134,7 +138,7 @@ function hoverContent(content) {
134
138
  class: 'content',
135
139
  style: {
136
140
  margin: 4,
137
- minWidth: 150,
141
+ minWidth: 180,
138
142
  }
139
143
  }, content);
140
144
  }
@@ -143,10 +147,10 @@ function header(title) {
143
147
  class: 'header',
144
148
  style: {
145
149
  color: asCssVariable(descriptionForeground),
146
- fontSize: '12px',
150
+ fontSize: '13px',
147
151
  fontWeight: '600',
148
- padding: '0 10px',
149
- lineHeight: 26,
152
+ padding: '0 4px',
153
+ lineHeight: 28,
150
154
  }
151
155
  }, [title]);
152
156
  }
@@ -180,7 +184,8 @@ function option(props) {
180
184
  disableTitle: true,
181
185
  ...defaultKeybindingLabelStyles,
182
186
  keybindingLabelShadow: undefined,
183
- keybindingLabelBackground: asCssVariable(keybindingLabelBackground),
187
+ keybindingLabelForeground: asCssVariable(descriptionForeground),
188
+ keybindingLabelBackground: 'transparent',
184
189
  keybindingLabelBorder: 'transparent',
185
190
  keybindingLabelBottomBorder: undefined,
186
191
  }));
@@ -196,7 +201,7 @@ function actionBar(actions, options) {
196
201
  return derived({ name: 'inlineEdits.actionBar' }, (_reader) => n.div({
197
202
  class: ['action-widget-action-bar'],
198
203
  style: {
199
- padding: '0 10px',
204
+ padding: '3px 24px',
200
205
  }
201
206
  }, [
202
207
  n.div({
@@ -213,7 +218,7 @@ function separator() {
213
218
  class: 'menu-separator',
214
219
  style: {
215
220
  color: asCssVariable(editorActionListForeground),
216
- padding: '4px 0',
221
+ padding: '2px 0',
217
222
  }
218
223
  }, n.div({
219
224
  style: {
@@ -1 +1 @@
1
- {"version":3,"sources":["vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.ts"],"names":[],"mappings":"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","file":"gutterIndicatorMenu.js","sourceRoot":"file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { ChildNode, LiveElement, n } from '../../../../../../../base/browser/dom.js';\nimport { ActionBar, IActionBarOptions } from '../../../../../../../base/browser/ui/actionbar/actionbar.js';\nimport { renderIcon } from '../../../../../../../base/browser/ui/iconLabel/iconLabels.js';\nimport { KeybindingLabel } from '../../../../../../../base/browser/ui/keybindingLabel/keybindingLabel.js';\nimport { IAction } from '../../../../../../../base/common/actions.js';\nimport { Codicon } from '../../../../../../../base/common/codicons.js';\nimport { ResolvedKeybinding } from '../../../../../../../base/common/keybindings.js';\nimport { IObservable, autorun, constObservable, derived, observableFromEvent, observableValue } from '../../../../../../../base/common/observable.js';\nimport { OS } from '../../../../../../../base/common/platform.js';\nimport { ThemeIcon } from '../../../../../../../base/common/themables.js';\nimport { localize } from '../../../../../../../nls.js';\nimport { ICommandService } from '../../../../../../../platform/commands/common/commands.js';\nimport { IContextKeyService } from '../../../../../../../platform/contextkey/common/contextkey.js';\nimport { nativeHoverDelegate } from '../../../../../../../platform/hover/browser/hover.js';\nimport { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js';\nimport { defaultKeybindingLabelStyles } from '../../../../../../../platform/theme/browser/defaultStyles.js';\nimport { asCssVariable, descriptionForeground, editorActionListForeground, editorHoverBorder, keybindingLabelBackground } from '../../../../../../../platform/theme/common/colorRegistry.js';\nimport { ObservableCodeEditor } from '../../../../../../browser/observableCodeEditor.js';\nimport { EditorOption } from '../../../../../../common/config/editorOptions.js';\nimport { hideInlineCompletionId, inlineSuggestCommitId, toggleShowCollapsedId } from '../../../controller/commandIds.js';\nimport { IInlineEditModel } from '../inlineEditsViewInterface.js';\nimport { FirstFnArg } from '../utils/utils.js';\n\nexport class GutterIndicatorMenuContent {\n\n\tprivate readonly _inlineEditsShowCollapsed: IObservable<boolean>;\n\n\tconstructor(\n\t\tprivate readonly _model: IInlineEditModel,\n\t\tprivate readonly _close: (focusEditor: boolean) => void,\n\t\tprivate readonly _editorObs: ObservableCodeEditor,\n\t\t@IContextKeyService private readonly _contextKeyService: IContextKeyService,\n\t\t@IKeybindingService private readonly _keybindingService: IKeybindingService,\n\t\t@ICommandService private readonly _commandService: ICommandService,\n\t) {\n\t\tthis._inlineEditsShowCollapsed = this._editorObs.getOption(EditorOption.inlineSuggest).map(s => s.edits.showCollapsed);\n\t}\n\n\tpublic toDisposableLiveElement(): LiveElement {\n\t\treturn this._createHoverContent().toDisposableLiveElement();\n\t}\n\n\tprivate _createHoverContent() {\n\t\tconst activeElement = observableValue<string | undefined>('active', undefined);\n\n\t\tconst createOptionArgs = (options: { id: string; title: string; icon: IObservable<ThemeIcon> | ThemeIcon; commandId: string | IObservable<string>; commandArgs?: unknown[] }): FirstFnArg<typeof option> => {\n\t\t\treturn {\n\t\t\t\ttitle: options.title,\n\t\t\t\ticon: options.icon,\n\t\t\t\tkeybinding: typeof options.commandId === 'string' ? this._getKeybinding(options.commandArgs ? undefined : options.commandId) : derived(this, reader => typeof options.commandId === 'string' ? undefined : this._getKeybinding(options.commandArgs ? undefined : options.commandId.read(reader)).read(reader)),\n\t\t\t\tisActive: activeElement.map(v => v === options.id),\n\t\t\t\tonHoverChange: v => activeElement.set(v ? options.id : undefined, undefined),\n\t\t\t\tonAction: () => {\n\t\t\t\t\tthis._close(true);\n\t\t\t\t\treturn this._commandService.executeCommand(typeof options.commandId === 'string' ? options.commandId : options.commandId.get(), ...(options.commandArgs ?? []));\n\t\t\t\t},\n\t\t\t};\n\t\t};\n\n\t\tconst title = header(this._model.displayName);\n\n\t\tconst gotoAndAccept = option(createOptionArgs({\n\t\t\tid: 'gotoAndAccept',\n\t\t\ttitle: `${localize('goto', \"Go To\")} / ${localize('accept', \"Accept\")}`,\n\t\t\ticon: Codicon.check,\n\t\t\tcommandId: inlineSuggestCommitId\n\t\t}));\n\n\t\tconst reject = option(createOptionArgs({\n\t\t\tid: 'reject',\n\t\t\ttitle: localize('reject', \"Reject\"),\n\t\t\ticon: Codicon.close,\n\t\t\tcommandId: hideInlineCompletionId\n\t\t}));\n\n\t\tconst extensionCommands = this._model.extensionCommands.map((c, idx) => option(createOptionArgs({\n\t\t\tid: c.command.id + '_' + idx,\n\t\t\ttitle: c.command.title,\n\t\t\ticon: c.icon ?? Codicon.symbolEvent,\n\t\t\tcommandId: c.command.id,\n\t\t\tcommandArgs: c.command.arguments\n\t\t})));\n\n\t\tconst toggleCollapsedMode = this._inlineEditsShowCollapsed.map(showCollapsed => showCollapsed ?\n\t\t\toption(createOptionArgs({\n\t\t\t\tid: 'showExpanded',\n\t\t\t\ttitle: localize('showExpanded', \"Show Expanded\"),\n\t\t\t\ticon: Codicon.expandAll,\n\t\t\t\tcommandId: toggleShowCollapsedId\n\t\t\t}))\n\t\t\t: option(createOptionArgs({\n\t\t\t\tid: 'showCollapsed',\n\t\t\t\ttitle: localize('showCollapsed', \"Show Collapsed\"),\n\t\t\t\ticon: Codicon.collapseAll,\n\t\t\t\tcommandId: toggleShowCollapsedId\n\t\t\t}))\n\t\t);\n\n\t\tconst settings = option(createOptionArgs({\n\t\t\tid: 'settings',\n\t\t\ttitle: localize('settings', \"Settings\"),\n\t\t\ticon: Codicon.gear,\n\t\t\tcommandId: 'workbench.action.openSettings',\n\t\t\tcommandArgs: ['@tag:nextEditSuggestions']\n\t\t}));\n\n\t\tconst actions = this._model.action ? [this._model.action] : [];\n\t\tconst actionBarFooter = actions.length > 0 ? actionBar(\n\t\t\tactions.map(action => ({\n\t\t\t\tid: action.id,\n\t\t\t\tlabel: action.title,\n\t\t\t\tenabled: true,\n\t\t\t\trun: () => this._commandService.executeCommand(action.id, ...(action.arguments ?? [])),\n\t\t\t\tclass: undefined,\n\t\t\t\ttooltip: action.tooltip ?? action.title\n\t\t\t})),\n\t\t\t{ hoverDelegate: nativeHoverDelegate /* unable to show hover inside another hover */ }\n\t\t) : undefined;\n\n\t\treturn hoverContent([\n\t\t\ttitle,\n\t\t\tgotoAndAccept,\n\t\t\treject,\n\t\t\ttoggleCollapsedMode,\n\t\t\tsettings,\n\n\t\t\textensionCommands.length ? separator() : undefined,\n\t\t\t...extensionCommands,\n\n\t\t\tactionBarFooter ? separator() : undefined,\n\t\t\tactionBarFooter\n\t\t]);\n\t}\n\n\tprivate _getKeybinding(commandId: string | undefined) {\n\t\tif (!commandId) {\n\t\t\treturn constObservable(undefined);\n\t\t}\n\t\treturn observableFromEvent(this._contextKeyService.onDidChangeContext, () => this._keybindingService.lookupKeybinding(commandId)); // TODO: use contextkeyservice to use different renderings\n\t}\n}\n\nfunction hoverContent(content: ChildNode) {\n\treturn n.div({\n\t\tclass: 'content',\n\t\tstyle: {\n\t\t\tmargin: 4,\n\t\t\tminWidth: 150,\n\t\t}\n\t}, content);\n}\n\nfunction header(title: string | IObservable<string>) {\n\treturn n.div({\n\t\tclass: 'header',\n\t\tstyle: {\n\t\t\tcolor: asCssVariable(descriptionForeground),\n\t\t\tfontSize: '12px',\n\t\t\tfontWeight: '600',\n\t\t\tpadding: '0 10px',\n\t\t\tlineHeight: 26,\n\t\t}\n\t}, [title]);\n}\n\nfunction option(props: {\n\ttitle: string;\n\ticon: IObservable<ThemeIcon> | ThemeIcon;\n\tkeybinding: IObservable<ResolvedKeybinding | undefined>;\n\tisActive?: IObservable<boolean>;\n\tonHoverChange?: (isHovered: boolean) => void;\n\tonAction?: () => void;\n}) {\n\treturn derived({ name: 'inlineEdits.option' }, (_reader) => n.div({\n\t\tclass: ['monaco-menu-option', props.isActive?.map(v => v && 'active')],\n\t\tonmouseenter: () => props.onHoverChange?.(true),\n\t\tonmouseleave: () => props.onHoverChange?.(false),\n\t\tonclick: props.onAction,\n\t\tonkeydown: e => {\n\t\t\tif (e.key === 'Enter') {\n\t\t\t\tprops.onAction?.();\n\t\t\t}\n\t\t},\n\t\ttabIndex: 0,\n\t\tstyle: {\n\t\t\tborderRadius: 3, // same as hover widget border radius\n\t\t}\n\t}, [\n\t\tn.elem('span', {\n\t\t\tstyle: {\n\t\t\t\tfontSize: 16,\n\t\t\t\tdisplay: 'flex',\n\t\t\t}\n\t\t}, [ThemeIcon.isThemeIcon(props.icon) ? renderIcon(props.icon) : props.icon.map(icon => renderIcon(icon))]),\n\t\tn.elem('span', {}, [props.title]),\n\t\tn.div({\n\t\t\tstyle: { marginLeft: 'auto' },\n\t\t\tref: elem => {\n\t\t\t\tconst keybindingLabel = _reader.store.add(new KeybindingLabel(elem, OS, {\n\t\t\t\t\tdisableTitle: true,\n\t\t\t\t\t...defaultKeybindingLabelStyles,\n\t\t\t\t\tkeybindingLabelShadow: undefined,\n\t\t\t\t\tkeybindingLabelBackground: asCssVariable(keybindingLabelBackground),\n\t\t\t\t\tkeybindingLabelBorder: 'transparent',\n\t\t\t\t\tkeybindingLabelBottomBorder: undefined,\n\t\t\t\t}));\n\t\t\t\t_reader.store.add(autorun(reader => {\n\t\t\t\t\tkeybindingLabel.set(props.keybinding.read(reader));\n\t\t\t\t}));\n\t\t\t}\n\t\t})\n\t]));\n}\n\n// TODO: make this observable\nfunction actionBar(actions: IAction[], options: IActionBarOptions) {\n\treturn derived({ name: 'inlineEdits.actionBar' }, (_reader) => n.div({\n\t\tclass: ['action-widget-action-bar'],\n\t\tstyle: {\n\t\t\tpadding: '0 10px',\n\t\t}\n\t}, [\n\t\tn.div({\n\t\t\tref: elem => {\n\t\t\t\tconst actionBar = _reader.store.add(new ActionBar(elem, options));\n\t\t\t\tactionBar.push(actions, { icon: false, label: true });\n\t\t\t}\n\t\t})\n\t]));\n}\n\nfunction separator() {\n\treturn n.div({\n\t\tid: 'inline-edit-gutter-indicator-menu-separator',\n\t\tclass: 'menu-separator',\n\t\tstyle: {\n\t\t\tcolor: asCssVariable(editorActionListForeground),\n\t\t\tpadding: '4px 0',\n\t\t}\n\t}, n.div({\n\t\tstyle: {\n\t\t\tborderBottom: `1px solid ${asCssVariable(editorHoverBorder)}`,\n\t\t}\n\t}));\n}\n"]}
1
+ {"version":3,"sources":["vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.ts"],"names":[],"mappings":"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","file":"gutterIndicatorMenu.js","sourceRoot":"file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { ChildNode, LiveElement, n } from '../../../../../../../base/browser/dom.js';\nimport { ActionBar, IActionBarOptions } from '../../../../../../../base/browser/ui/actionbar/actionbar.js';\nimport { renderIcon } from '../../../../../../../base/browser/ui/iconLabel/iconLabels.js';\nimport { KeybindingLabel } from '../../../../../../../base/browser/ui/keybindingLabel/keybindingLabel.js';\nimport { IAction } from '../../../../../../../base/common/actions.js';\nimport { Codicon } from '../../../../../../../base/common/codicons.js';\nimport { ResolvedKeybinding } from '../../../../../../../base/common/keybindings.js';\nimport { IObservable, autorun, constObservable, derived, observableFromEvent, observableValue } from '../../../../../../../base/common/observable.js';\nimport { OS } from '../../../../../../../base/common/platform.js';\nimport { ThemeIcon } from '../../../../../../../base/common/themables.js';\nimport { localize } from '../../../../../../../nls.js';\nimport { ICommandService } from '../../../../../../../platform/commands/common/commands.js';\nimport { IContextKeyService } from '../../../../../../../platform/contextkey/common/contextkey.js';\nimport { nativeHoverDelegate } from '../../../../../../../platform/hover/browser/hover.js';\nimport { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js';\nimport { defaultKeybindingLabelStyles } from '../../../../../../../platform/theme/browser/defaultStyles.js';\nimport { asCssVariable, descriptionForeground, editorActionListForeground, editorHoverBorder } from '../../../../../../../platform/theme/common/colorRegistry.js';\nimport { ObservableCodeEditor } from '../../../../../../browser/observableCodeEditor.js';\nimport { EditorOption } from '../../../../../../common/config/editorOptions.js';\nimport { hideInlineCompletionId, inlineSuggestCommitId, toggleShowCollapsedId } from '../../../controller/commandIds.js';\nimport { IInlineEditModel } from '../inlineEditsViewInterface.js';\nimport { FirstFnArg } from '../utils/utils.js';\n\nexport class GutterIndicatorMenuContent {\n\n\tprivate readonly _inlineEditsShowCollapsed: IObservable<boolean>;\n\n\tconstructor(\n\t\tprivate readonly _model: IInlineEditModel,\n\t\tprivate readonly _close: (focusEditor: boolean) => void,\n\t\tprivate readonly _editorObs: ObservableCodeEditor,\n\t\t@IContextKeyService private readonly _contextKeyService: IContextKeyService,\n\t\t@IKeybindingService private readonly _keybindingService: IKeybindingService,\n\t\t@ICommandService private readonly _commandService: ICommandService,\n\t) {\n\t\tthis._inlineEditsShowCollapsed = this._editorObs.getOption(EditorOption.inlineSuggest).map(s => s.edits.showCollapsed);\n\t}\n\n\tpublic toDisposableLiveElement(): LiveElement {\n\t\treturn this._createHoverContent().toDisposableLiveElement();\n\t}\n\n\tprivate _createHoverContent() {\n\t\tconst activeElement = observableValue<string | undefined>('active', undefined);\n\n\t\tconst createOptionArgs = (options: { id: string; title: string; icon: IObservable<ThemeIcon> | ThemeIcon; commandId: string | IObservable<string>; commandArgs?: unknown[] }): FirstFnArg<typeof option> => {\n\t\t\treturn {\n\t\t\t\ttitle: options.title,\n\t\t\t\ticon: options.icon,\n\t\t\t\tkeybinding: typeof options.commandId === 'string' ? this._getKeybinding(options.commandArgs ? undefined : options.commandId) : derived(this, reader => typeof options.commandId === 'string' ? undefined : this._getKeybinding(options.commandArgs ? undefined : options.commandId.read(reader)).read(reader)),\n\t\t\t\tisActive: activeElement.map(v => v === options.id),\n\t\t\t\tonHoverChange: v => activeElement.set(v ? options.id : undefined, undefined),\n\t\t\t\tonAction: () => {\n\t\t\t\t\tthis._close(true);\n\t\t\t\t\treturn this._commandService.executeCommand(typeof options.commandId === 'string' ? options.commandId : options.commandId.get(), ...(options.commandArgs ?? []));\n\t\t\t\t},\n\t\t\t};\n\t\t};\n\n\t\tconst title = header(this._model.displayName);\n\n\t\tconst gotoAndAccept = option(createOptionArgs({\n\t\t\tid: 'gotoAndAccept',\n\t\t\ttitle: `${localize('goto', \"Go To\")} / ${localize('accept', \"Accept\")}`,\n\t\t\ticon: Codicon.check,\n\t\t\tcommandId: inlineSuggestCommitId\n\t\t}));\n\n\t\tconst reject = option(createOptionArgs({\n\t\t\tid: 'reject',\n\t\t\ttitle: localize('reject', \"Reject\"),\n\t\t\ticon: Codicon.close,\n\t\t\tcommandId: hideInlineCompletionId\n\t\t}));\n\n\t\tconst extensionCommands = this._model.extensionCommands.map((c, idx) => option(createOptionArgs({\n\t\t\tid: c.command.id + '_' + idx,\n\t\t\ttitle: c.command.title,\n\t\t\ticon: c.icon ?? Codicon.symbolEvent,\n\t\t\tcommandId: c.command.id,\n\t\t\tcommandArgs: c.command.arguments\n\t\t})));\n\n\t\tconst toggleCollapsedMode = this._inlineEditsShowCollapsed.map(showCollapsed => showCollapsed ?\n\t\t\toption(createOptionArgs({\n\t\t\t\tid: 'showExpanded',\n\t\t\t\ttitle: localize('showExpanded', \"Show Expanded\"),\n\t\t\t\ticon: Codicon.expandAll,\n\t\t\t\tcommandId: toggleShowCollapsedId\n\t\t\t}))\n\t\t\t: option(createOptionArgs({\n\t\t\t\tid: 'showCollapsed',\n\t\t\t\ttitle: localize('showCollapsed', \"Show Collapsed\"),\n\t\t\t\ticon: Codicon.collapseAll,\n\t\t\t\tcommandId: toggleShowCollapsedId\n\t\t\t}))\n\t\t);\n\n\t\tconst settings = option(createOptionArgs({\n\t\t\tid: 'settings',\n\t\t\ttitle: localize('settings', \"Settings\"),\n\t\t\ticon: Codicon.gear,\n\t\t\tcommandId: 'workbench.action.openSettings',\n\t\t\tcommandArgs: ['@tag:nextEditSuggestions']\n\t\t}));\n\n\t\tconst actions = this._model.action ? [this._model.action] : [];\n\t\tconst actionBarFooter = actions.length > 0 ? actionBar(\n\t\t\tactions.map(action => ({\n\t\t\t\tid: action.id,\n\t\t\t\tlabel: action.title + '...',\n\t\t\t\tenabled: true,\n\t\t\t\trun: () => this._commandService.executeCommand(action.id, ...(action.arguments ?? [])),\n\t\t\t\tclass: undefined,\n\t\t\t\ttooltip: action.tooltip ?? action.title\n\t\t\t})),\n\t\t\t{ hoverDelegate: nativeHoverDelegate /* unable to show hover inside another hover */ }\n\t\t) : undefined;\n\n\t\treturn hoverContent([\n\t\t\ttitle,\n\t\t\tgotoAndAccept,\n\t\t\treject,\n\t\t\ttoggleCollapsedMode,\n\t\t\textensionCommands.length ? separator() : undefined,\n\t\t\tsettings,\n\n\t\t\t...extensionCommands,\n\n\t\t\tactionBarFooter ? separator() : undefined,\n\t\t\tactionBarFooter\n\t\t]);\n\t}\n\n\tprivate _getKeybinding(commandId: string | undefined) {\n\t\tif (!commandId) {\n\t\t\treturn constObservable(undefined);\n\t\t}\n\t\treturn observableFromEvent(this._contextKeyService.onDidChangeContext, () => this._keybindingService.lookupKeybinding(commandId)); // TODO: use contextkeyservice to use different renderings\n\t}\n}\n\nfunction hoverContent(content: ChildNode) {\n\treturn n.div({\n\t\tclass: 'content',\n\t\tstyle: {\n\t\t\tmargin: 4,\n\t\t\tminWidth: 180,\n\t\t}\n\t}, content);\n}\n\nfunction header(title: string | IObservable<string>) {\n\treturn n.div({\n\t\tclass: 'header',\n\t\tstyle: {\n\t\t\tcolor: asCssVariable(descriptionForeground),\n\t\t\tfontSize: '13px',\n\t\t\tfontWeight: '600',\n\t\t\tpadding: '0 4px',\n\t\t\tlineHeight: 28,\n\t\t}\n\t}, [title]);\n}\n\nfunction option(props: {\n\ttitle: string;\n\ticon: IObservable<ThemeIcon> | ThemeIcon;\n\tkeybinding: IObservable<ResolvedKeybinding | undefined>;\n\tisActive?: IObservable<boolean>;\n\tonHoverChange?: (isHovered: boolean) => void;\n\tonAction?: () => void;\n}) {\n\treturn derived({ name: 'inlineEdits.option' }, (_reader) => n.div({\n\t\tclass: ['monaco-menu-option', props.isActive?.map(v => v && 'active')],\n\t\tonmouseenter: () => props.onHoverChange?.(true),\n\t\tonmouseleave: () => props.onHoverChange?.(false),\n\t\tonclick: props.onAction,\n\t\tonkeydown: e => {\n\t\t\tif (e.key === 'Enter') {\n\t\t\t\tprops.onAction?.();\n\t\t\t}\n\t\t},\n\t\ttabIndex: 0,\n\t\tstyle: {\n\t\t\tborderRadius: 3, // same as hover widget border radius\n\t\t}\n\t}, [\n\t\tn.elem('span', {\n\t\t\tstyle: {\n\t\t\t\tfontSize: 16,\n\t\t\t\tdisplay: 'flex',\n\t\t\t}\n\t\t}, [ThemeIcon.isThemeIcon(props.icon) ? renderIcon(props.icon) : props.icon.map(icon => renderIcon(icon))]),\n\t\tn.elem('span', {}, [props.title]),\n\t\tn.div({\n\t\t\tstyle: { marginLeft: 'auto' },\n\t\t\tref: elem => {\n\t\t\t\tconst keybindingLabel = _reader.store.add(new KeybindingLabel(elem, OS, {\n\t\t\t\t\tdisableTitle: true,\n\t\t\t\t\t...defaultKeybindingLabelStyles,\n\t\t\t\t\tkeybindingLabelShadow: undefined,\n\t\t\t\t\tkeybindingLabelForeground: asCssVariable(descriptionForeground),\n\t\t\t\t\tkeybindingLabelBackground: 'transparent',\n\t\t\t\t\tkeybindingLabelBorder: 'transparent',\n\t\t\t\t\tkeybindingLabelBottomBorder: undefined,\n\t\t\t\t}));\n\t\t\t\t_reader.store.add(autorun(reader => {\n\t\t\t\t\tkeybindingLabel.set(props.keybinding.read(reader));\n\t\t\t\t}));\n\t\t\t}\n\t\t})\n\t]));\n}\n\n// TODO: make this observable\nfunction actionBar(actions: IAction[], options: IActionBarOptions) {\n\treturn derived({ name: 'inlineEdits.actionBar' }, (_reader) => n.div({\n\t\tclass: ['action-widget-action-bar'],\n\t\tstyle: {\n\t\t\tpadding: '3px 24px',\n\t\t}\n\t}, [\n\t\tn.div({\n\t\t\tref: elem => {\n\t\t\t\tconst actionBar = _reader.store.add(new ActionBar(elem, options));\n\t\t\t\tactionBar.push(actions, { icon: false, label: true });\n\t\t\t}\n\t\t})\n\t]));\n}\n\nfunction separator() {\n\treturn n.div({\n\t\tid: 'inline-edit-gutter-indicator-menu-separator',\n\t\tclass: 'menu-separator',\n\t\tstyle: {\n\t\t\tcolor: asCssVariable(editorActionListForeground),\n\t\t\tpadding: '2px 0',\n\t\t}\n\t}, n.div({\n\t\tstyle: {\n\t\t\tborderBottom: `1px solid ${asCssVariable(editorHoverBorder)}`,\n\t\t}\n\t}));\n}\n"]}
@@ -193,18 +193,27 @@
193
193
  .monaco-menu-option {
194
194
  color: var(--vscode-editorActionList-foreground);
195
195
  font-size: 13px;
196
- padding: 0 10px;
197
- line-height: 26px;
196
+ padding: 0 4px;
197
+ line-height: 28px;
198
198
  display: flex;
199
- gap: 8px;
199
+ gap: 4px;
200
200
  align-items: center;
201
- border-radius: 4px;
201
+ border-radius: 3px;
202
202
  cursor: pointer;
203
203
 
204
+ .monaco-keybinding-key {
205
+ font-size: 13px;
206
+ opacity: 0.7;
207
+ }
208
+
204
209
  &.active {
205
210
  background: var(--vscode-editorActionList-focusBackground);
206
211
  color: var(--vscode-editorActionList-focusForeground);
207
212
  outline: 1px solid var(--vscode-menu-selectionBorder, transparent);
208
213
  outline-offset: -1px;
214
+
215
+ .monaco-keybinding-key {
216
+ color: var(--vscode-editorActionList-focusForeground);
217
+ }
209
218
  }
210
219
  }
@@ -1031,7 +1031,8 @@ export class SnakeCaseAction extends AbstractCaseAction {
1031
1031
  }
1032
1032
  }
1033
1033
  export class CamelCaseAction extends AbstractCaseAction {
1034
- static { this.wordBoundary = new BackwardsCompatibleRegExp('[_\\s-]', 'gm'); }
1034
+ static { this.singleLineWordBoundary = new BackwardsCompatibleRegExp('[_\\s-]+', 'gm'); }
1035
+ static { this.multiLineWordBoundary = new BackwardsCompatibleRegExp('[_-]+', 'gm'); }
1035
1036
  static { this.validWordStart = new BackwardsCompatibleRegExp('^(\\p{Lu}[^\\p{Lu}])', 'gmu'); }
1036
1037
  constructor() {
1037
1038
  super({
@@ -1041,7 +1042,7 @@ export class CamelCaseAction extends AbstractCaseAction {
1041
1042
  });
1042
1043
  }
1043
1044
  _modifyText(text, wordSeparators) {
1044
- const wordBoundary = CamelCaseAction.wordBoundary.get();
1045
+ const wordBoundary = /\r\n|\r|\n/.test(text) ? CamelCaseAction.multiLineWordBoundary.get() : CamelCaseAction.singleLineWordBoundary.get();
1045
1046
  const validWordStart = CamelCaseAction.validWordStart.get();
1046
1047
  if (!wordBoundary || !validWordStart) {
1047
1048
  // cannot support this
@@ -1054,7 +1055,7 @@ export class CamelCaseAction extends AbstractCaseAction {
1054
1055
  }
1055
1056
  }
1056
1057
  export class PascalCaseAction extends AbstractCaseAction {
1057
- static { this.wordBoundary = new BackwardsCompatibleRegExp('[_\\s-]', 'gm'); }
1058
+ static { this.wordBoundary = new BackwardsCompatibleRegExp('[_ \\t-]', 'gm'); }
1058
1059
  static { this.wordBoundaryToMaintain = new BackwardsCompatibleRegExp('(?<=\\.)', 'gm'); }
1059
1060
  constructor() {
1060
1061
  super({
@@ -1134,7 +1135,7 @@ registerEditorAction(ReverseLinesAction);
1134
1135
  if (SnakeCaseAction.caseBoundary.isSupported() && SnakeCaseAction.singleLetters.isSupported()) {
1135
1136
  registerEditorAction(SnakeCaseAction);
1136
1137
  }
1137
- if (CamelCaseAction.wordBoundary.isSupported()) {
1138
+ if (CamelCaseAction.singleLineWordBoundary.isSupported() && CamelCaseAction.multiLineWordBoundary.isSupported()) {
1138
1139
  registerEditorAction(CamelCaseAction);
1139
1140
  }
1140
1141
  if (PascalCaseAction.wordBoundary.isSupported()) {