@theia/debug 1.31.0-next.2 → 1.31.0-next.29

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.
@@ -1,4 +1,4 @@
1
- import { AbstractViewContribution, KeybindingRegistry, LabelProvider } from '@theia/core/lib/browser';
1
+ import { AbstractViewContribution, KeybindingRegistry, LabelProvider, OnWillStopAction, FrontendApplicationContribution } from '@theia/core/lib/browser';
2
2
  import * as monaco from '@theia/monaco-editor-core';
3
3
  import { MenuModelRegistry, CommandRegistry, Command } from '@theia/core/lib/common';
4
4
  import { EditorManager } from '@theia/editor/lib/browser';
@@ -164,7 +164,7 @@ export declare namespace DebugBreakpointWidgetCommands {
164
164
  id: string;
165
165
  };
166
166
  }
167
- export declare class DebugFrontendApplicationContribution extends AbstractViewContribution<DebugWidget> implements TabBarToolbarContribution, ColorContribution {
167
+ export declare class DebugFrontendApplicationContribution extends AbstractViewContribution<DebugWidget> implements TabBarToolbarContribution, ColorContribution, FrontendApplicationContribution {
168
168
  protected readonly debug: DebugService;
169
169
  protected readonly manager: DebugSessionManager;
170
170
  protected readonly configurations: DebugConfigurationManager;
@@ -181,7 +181,7 @@ export declare class DebugFrontendApplicationContribution extends AbstractViewCo
181
181
  protected firstSessionStart: boolean;
182
182
  onStart(): Promise<void>;
183
183
  onStop(): void;
184
- onWillStop(): boolean;
184
+ onWillStop(): OnWillStopAction | undefined;
185
185
  registerMenus(menus: MenuModelRegistry): void;
186
186
  registerCommands(registry: CommandRegistry): void;
187
187
  registerKeybindings(keybindings: KeybindingRegistry): void;
@@ -1 +1 @@
1
- {"version":3,"file":"debug-frontend-application-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/debug-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debug-frontend-application-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/debug-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
@@ -430,7 +430,26 @@ let DebugFrontendApplicationContribution = class DebugFrontendApplicationContrib
430
430
  this.watchManager.save();
431
431
  }
432
432
  onWillStop() {
433
- return this.preference['debug.confirmOnExit'] === 'always' && !!this.manager.currentSession;
433
+ if (this.preference['debug.confirmOnExit'] === 'always' && this.manager.currentSession) {
434
+ return {
435
+ reason: 'active-debug-sessions',
436
+ action: async () => {
437
+ if (this.manager.currentSession) {
438
+ const msg = this.manager.sessions.length === 1
439
+ ? nls_1.nls.localize('theia/debug/debugSessionActive', 'There is an active debug session, are you sure you want to stop it?')
440
+ : nls_1.nls.localize('theia/debug/debugSessionActiveMultiple', 'There are active debug sessions, are you sure you want to stop them?');
441
+ const safeToExit = await new browser_1.ConfirmDialog({
442
+ title: '',
443
+ msg,
444
+ ok: nls_1.nls.localizeByDefault('Stop Debugging'),
445
+ cancel: browser_1.Dialog.CANCEL,
446
+ }).open();
447
+ return safeToExit === true;
448
+ }
449
+ return true;
450
+ },
451
+ };
452
+ }
434
453
  }
435
454
  registerMenus(menus) {
436
455
  super.registerMenus(menus);
@@ -1 +1 @@
1
- {"version":3,"file":"debug-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/debug-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debug-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/debug-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
+ import { FrontendApplicationContribution } from '@theia/core/lib/browser/frontend-application';
1
2
  import * as monaco from '@theia/monaco-editor-core';
2
3
  import { IDecorationOptions } from '@theia/monaco-editor-core/esm/vs/editor/common/editorCommon';
3
- import { FrontendApplicationContribution } from '@theia/core/lib/browser/frontend-application';
4
4
  import { MonacoEditorService } from '@theia/monaco/lib/browser/monaco-editor-service';
5
5
  import { DebugPreferences } from '../debug-preferences';
6
- import { DebugEditorModel } from './debug-editor-model';
7
6
  import { DebugStackFrame } from '../model/debug-stack-frame';
7
+ import { DebugEditorModel } from './debug-editor-model';
8
8
  export declare const INLINE_VALUE_DECORATION_KEY = "inlinevaluedecoration";
9
9
  export declare class DebugInlineValueDecorator implements FrontendApplicationContribution {
10
10
  protected readonly editorService: MonacoEditorService;
@@ -13,8 +13,9 @@ export declare class DebugInlineValueDecorator implements FrontendApplicationCon
13
13
  protected wordToLineNumbersMap: Map<string, monaco.Position[]> | undefined;
14
14
  onStart(): void;
15
15
  calculateDecorations(debugEditorModel: DebugEditorModel, stackFrame: DebugStackFrame | undefined): Promise<IDecorationOptions[]>;
16
- protected updateInlineValueDecorations(model: monaco.editor.ITextModel | undefined, stackFrame: DebugStackFrame | undefined): Promise<IDecorationOptions[]>;
16
+ protected updateInlineValueDecorations(debugEditorModel: DebugEditorModel, model: monaco.editor.ITextModel | undefined, stackFrame: DebugStackFrame | undefined): Promise<IDecorationOptions[]>;
17
17
  private createInlineValueDecorationsInsideRange;
18
+ protected formatInlineValue(...args: string[]): string;
18
19
  private createInlineValueDecoration;
19
20
  private getWordToPositionsMap;
20
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"debug-inline-value-decorator.d.ts","sourceRoot":"","sources":["../../../src/browser/editor/debug-inline-value-decorator.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6DAA6D,CAAC;AAIjG,OAAO,EAAE,+BAA+B,EAAE,MAAM,8CAA8C,CAAC;AAC/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAEtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAcnE,qBACa,yBAA0B,YAAW,+BAA+B;IAG7E,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAEjD,SAAS,CAAC,OAAO,UAAS;IAC1B,SAAS,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,SAAS,CAAa;IAEvF,OAAO,IAAI,IAAI;IAUT,oBAAoB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,EAAE,eAAe,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;cAOtH,4BAA4B,CACxC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,SAAS,EAC3C,UAAU,EAAE,eAAe,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IA6B3E,OAAO,CAAC,uCAAuC;IAmD/C,OAAO,CAAC,2BAA2B;IAkCnC,OAAO,CAAC,qBAAqB;CA8ChC"}
1
+ {"version":3,"file":"debug-inline-value-decorator.d.ts","sourceRoot":"","sources":["../../../src/browser/editor/debug-inline-value-decorator.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,+BAA+B,EAAE,MAAM,8CAA8C,CAAC;AAE/F,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AAGpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6DAA6D,CAAC;AAKjG,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAEtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGxD,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAmBnE,qBACa,yBAA0B,YAAW,+BAA+B;IAG7E,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAEjD,SAAS,CAAC,OAAO,UAAS;IAC1B,SAAS,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,SAAS,CAAa;IAEvF,OAAO,IAAI,IAAI;IAUT,oBAAoB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,EAAE,eAAe,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;cAOtH,4BAA4B,CACxC,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,SAAS,EAC3C,UAAU,EAAE,eAAe,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;YA6B7D,uCAAuC;IAiKrD,SAAS,CAAC,iBAAiB,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM;IAetD,OAAO,CAAC,2BAA2B;IAkCnC,OAAO,CAAC,qBAAqB;CA8ChC"}
@@ -25,14 +25,12 @@ var __metadata = (this && this.__metadata) || function (k, v) {
25
25
  };
26
26
  Object.defineProperty(exports, "__esModule", { value: true });
27
27
  exports.DebugInlineValueDecorator = exports.INLINE_VALUE_DECORATION_KEY = void 0;
28
- /*---------------------------------------------------------------------------------------------
29
- * Copyright (c) Microsoft Corporation. All rights reserved.
30
- * Licensed under the MIT License. See License.txt in the project root for license information.
31
- *--------------------------------------------------------------------------------------------*/
32
- // Based on https://github.com/theia-ide/vscode/blob/standalone/0.19.x/src/vs/workbench/contrib/debug/browser/debugEditorContribution.ts
33
28
  const inversify_1 = require("@theia/core/shared/inversify");
34
29
  const monaco = require("@theia/monaco-editor-core");
30
+ const cancellation_1 = require("@theia/monaco-editor-core/esm/vs/base/common/cancellation");
35
31
  const wordHelper_1 = require("@theia/monaco-editor-core/esm/vs/editor/common/core/wordHelper");
32
+ const languageFeatures_1 = require("@theia/monaco-editor-core/esm/vs/editor/common/services/languageFeatures");
33
+ const standaloneServices_1 = require("@theia/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneServices");
36
34
  const monaco_editor_service_1 = require("@theia/monaco/lib/browser/monaco-editor-service");
37
35
  const debug_console_items_1 = require("../console/debug-console-items");
38
36
  const debug_preferences_1 = require("../debug-preferences");
@@ -49,6 +47,12 @@ const MAX_TOKENIZATION_LINE_LEN = 500; // If line is too long, then inline value
49
47
  */
50
48
  // https://github.com/theia-ide/vscode/blob/standalone/0.19.x/src/vs/base/common/uint.ts#L7-L13
51
49
  const MAX_SAFE_SMALL_INTEGER = 1 << 30;
50
+ class InlineSegment {
51
+ constructor(column, text) {
52
+ this.column = column;
53
+ this.text = text;
54
+ }
55
+ }
52
56
  let DebugInlineValueDecorator = class DebugInlineValueDecorator {
53
57
  constructor() {
54
58
  this.enabled = false;
@@ -66,10 +70,10 @@ let DebugInlineValueDecorator = class DebugInlineValueDecorator {
66
70
  async calculateDecorations(debugEditorModel, stackFrame) {
67
71
  this.wordToLineNumbersMap = undefined;
68
72
  const model = debugEditorModel.editor.getControl().getModel() || undefined;
69
- return this.updateInlineValueDecorations(model, stackFrame);
73
+ return this.updateInlineValueDecorations(debugEditorModel, model, stackFrame);
70
74
  }
71
75
  // https://github.com/theia-ide/vscode/blob/standalone/0.19.x/src/vs/workbench/contrib/debug/browser/debugEditorContribution.ts#L382-L408
72
- async updateInlineValueDecorations(model, stackFrame) {
76
+ async updateInlineValueDecorations(debugEditorModel, model, stackFrame) {
73
77
  if (!this.enabled || !model || !stackFrame || !stackFrame.source || model.uri.toString() !== stackFrame.source.uri.toString()) {
74
78
  return [];
75
79
  }
@@ -87,51 +91,166 @@ let DebugInlineValueDecorator = class DebugInlineValueDecorator {
87
91
  if (scope.range) {
88
92
  range = range.setStartPosition(scope.range.startLineNumber, scope.range.startColumn);
89
93
  }
90
- return this.createInlineValueDecorationsInsideRange(children, range, model);
94
+ return this.createInlineValueDecorationsInsideRange(children, range, model, debugEditorModel, stackFrame);
91
95
  }));
92
96
  return decorationsPerScope.reduce((previous, current) => previous.concat(current), []);
93
97
  }
94
98
  // https://github.com/theia-ide/vscode/blob/standalone/0.19.x/src/vs/workbench/contrib/debug/browser/debugEditorContribution.ts#L410-L452
95
- createInlineValueDecorationsInsideRange(expressions, range, model) {
96
- const nameValueMap = new Map();
97
- for (const expr of expressions) {
98
- if (expr instanceof debug_console_items_1.DebugVariable) { // XXX: VS Code uses `IExpression` that has `name` and `value`.
99
- nameValueMap.set(expr.name, expr.value);
100
- }
101
- // Limit the size of map. Too large can have a perf impact
102
- if (nameValueMap.size >= MAX_NUM_INLINE_VALUES) {
103
- break;
104
- }
105
- }
106
- const lineToNamesMap = new Map();
107
- const wordToPositionsMap = this.getWordToPositionsMap(model);
108
- // Compute unique set of names on each line
109
- nameValueMap.forEach((_, name) => {
110
- const positions = wordToPositionsMap.get(name);
111
- if (positions) {
112
- for (const position of positions) {
113
- if (range.containsPosition(position)) {
114
- if (!lineToNamesMap.has(position.lineNumber)) {
115
- lineToNamesMap.set(position.lineNumber, []);
99
+ async createInlineValueDecorationsInsideRange(expressions, range, model, debugEditorModel, stackFrame) {
100
+ const decorations = [];
101
+ const inlineValuesProvider = standaloneServices_1.StandaloneServices.get(languageFeatures_1.ILanguageFeaturesService).inlineValuesProvider;
102
+ const textEditorModel = debugEditorModel.editor.document.textEditorModel;
103
+ if (inlineValuesProvider && inlineValuesProvider.has(textEditorModel)) {
104
+ const findVariable = async (variableName, caseSensitiveLookup) => {
105
+ const scopes = await stackFrame.getMostSpecificScopes(stackFrame.range);
106
+ const key = caseSensitiveLookup ? variableName : variableName.toLowerCase();
107
+ for (const scope of scopes) {
108
+ const expressionContainers = await scope.getElements();
109
+ let container = expressionContainers.next();
110
+ while (!container.done) {
111
+ const debugVariable = container.value;
112
+ if (debugVariable && debugVariable instanceof debug_console_items_1.DebugVariable) {
113
+ if (caseSensitiveLookup) {
114
+ if (debugVariable.name === key) {
115
+ return debugVariable;
116
+ }
117
+ }
118
+ else {
119
+ if (debugVariable.name.toLowerCase() === key) {
120
+ return debugVariable;
121
+ }
122
+ }
116
123
  }
117
- if (lineToNamesMap.get(position.lineNumber).indexOf(name) === -1) {
118
- lineToNamesMap.get(position.lineNumber).push(name);
124
+ container = expressionContainers.next();
125
+ }
126
+ }
127
+ return undefined;
128
+ };
129
+ const context = {
130
+ frameId: stackFrame.raw.id,
131
+ stoppedLocation: range
132
+ };
133
+ const cancellationToken = new cancellation_1.CancellationTokenSource().token;
134
+ const registeredProviders = inlineValuesProvider.ordered(textEditorModel).reverse();
135
+ const visibleRanges = debugEditorModel.editor.getControl().getVisibleRanges();
136
+ const lineDecorations = new Map();
137
+ for (const provider of registeredProviders) {
138
+ for (const visibleRange of visibleRanges) {
139
+ const result = await provider.provideInlineValues(textEditorModel, visibleRange, context, cancellationToken);
140
+ if (result) {
141
+ for (const inlineValue of result) {
142
+ let text = undefined;
143
+ switch (inlineValue.type) {
144
+ case 'text':
145
+ text = inlineValue.text;
146
+ break;
147
+ case 'variable': {
148
+ let varName = inlineValue.variableName;
149
+ if (!varName) {
150
+ const lineContent = model.getLineContent(inlineValue.range.startLineNumber);
151
+ varName = lineContent.substring(inlineValue.range.startColumn - 1, inlineValue.range.endColumn - 1);
152
+ }
153
+ const variable = await findVariable(varName, inlineValue.caseSensitiveLookup);
154
+ if (variable) {
155
+ text = this.formatInlineValue(varName, variable.value);
156
+ }
157
+ break;
158
+ }
159
+ case 'expression': {
160
+ let expr = inlineValue.expression;
161
+ if (!expr) {
162
+ const lineContent = model.getLineContent(inlineValue.range.startLineNumber);
163
+ expr = lineContent.substring(inlineValue.range.startColumn - 1, inlineValue.range.endColumn - 1);
164
+ }
165
+ if (expr) {
166
+ const expression = new debug_console_items_1.ExpressionItem(expr, () => stackFrame.thread.session);
167
+ await expression.evaluate('watch');
168
+ if (expression.available) {
169
+ text = this.formatInlineValue(expr, expression.value);
170
+ }
171
+ }
172
+ break;
173
+ }
174
+ }
175
+ if (text) {
176
+ const line = inlineValue.range.startLineNumber;
177
+ let lineSegments = lineDecorations.get(line);
178
+ if (!lineSegments) {
179
+ lineSegments = [];
180
+ lineDecorations.set(line, lineSegments);
181
+ }
182
+ if (!lineSegments.some(segment => segment.text === text)) {
183
+ lineSegments.push(new InlineSegment(inlineValue.range.startColumn, text));
184
+ }
185
+ }
119
186
  }
120
187
  }
121
188
  }
122
189
  }
123
- });
124
- const decorations = [];
125
- // Compute decorators for each line
126
- lineToNamesMap.forEach((names, line) => {
127
- const contentText = names.sort((first, second) => {
128
- const content = model.getLineContent(line);
129
- return content.indexOf(first) - content.indexOf(second);
130
- }).map(name => `${name} = ${nameValueMap.get(name)}`).join(', ');
131
- decorations.push(this.createInlineValueDecoration(line, contentText));
132
- });
190
+ ;
191
+ // sort line segments and concatenate them into a decoration
192
+ const separator = ', ';
193
+ lineDecorations.forEach((segments, line) => {
194
+ if (segments.length > 0) {
195
+ segments = segments.sort((a, b) => a.column - b.column);
196
+ const text = segments.map(s => s.text).join(separator);
197
+ decorations.push(this.createInlineValueDecoration(line, text));
198
+ }
199
+ });
200
+ }
201
+ else { // use fallback if no provider was registered
202
+ const lineToNamesMap = new Map();
203
+ const nameValueMap = new Map();
204
+ for (const expr of expressions) {
205
+ if (expr instanceof debug_console_items_1.DebugVariable) { // XXX: VS Code uses `IExpression` that has `name` and `value`.
206
+ nameValueMap.set(expr.name, expr.value);
207
+ }
208
+ // Limit the size of map. Too large can have a perf impact
209
+ if (nameValueMap.size >= MAX_NUM_INLINE_VALUES) {
210
+ break;
211
+ }
212
+ }
213
+ const wordToPositionsMap = this.getWordToPositionsMap(model);
214
+ // Compute unique set of names on each line
215
+ nameValueMap.forEach((_, name) => {
216
+ const positions = wordToPositionsMap.get(name);
217
+ if (positions) {
218
+ for (const position of positions) {
219
+ if (range.containsPosition(position)) {
220
+ if (!lineToNamesMap.has(position.lineNumber)) {
221
+ lineToNamesMap.set(position.lineNumber, []);
222
+ }
223
+ if (lineToNamesMap.get(position.lineNumber).indexOf(name) === -1) {
224
+ lineToNamesMap.get(position.lineNumber).push(name);
225
+ }
226
+ }
227
+ }
228
+ }
229
+ });
230
+ // Compute decorators for each line
231
+ lineToNamesMap.forEach((names, line) => {
232
+ const contentText = names.sort((first, second) => {
233
+ const content = model.getLineContent(line);
234
+ return content.indexOf(first) - content.indexOf(second);
235
+ }).map(name => `${name} = ${nameValueMap.get(name)}`).join(', ');
236
+ decorations.push(this.createInlineValueDecoration(line, contentText));
237
+ });
238
+ }
133
239
  return decorations;
134
240
  }
241
+ formatInlineValue(...args) {
242
+ const valuePattern = '{0} = {1}';
243
+ const formatRegExp = /{(\d+)}/g;
244
+ if (args.length === 0) {
245
+ return valuePattern;
246
+ }
247
+ return valuePattern.replace(formatRegExp, (match, group) => {
248
+ const idx = parseInt(group, 10);
249
+ return isNaN(idx) || idx < 0 || idx >= args.length ?
250
+ match :
251
+ args[idx];
252
+ });
253
+ }
135
254
  // https://github.com/theia-ide/vscode/blob/standalone/0.19.x/src/vs/workbench/contrib/debug/browser/debugEditorContribution.ts#L454-L485
136
255
  createInlineValueDecoration(lineNumber, contentText) {
137
256
  // If decoratorText is too long, trim and add ellipses. This could happen for minified files with everything on a single line
@@ -1 +1 @@
1
- {"version":3,"file":"debug-inline-value-decorator.js","sourceRoot":"","sources":["../../../src/browser/editor/debug-inline-value-decorator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debug-inline-value-decorator.js","sourceRoot":"","sources":["../../../src/browser/editor/debug-inline-value-decorator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,21 +1,21 @@
1
1
  {
2
2
  "name": "@theia/debug",
3
- "version": "1.31.0-next.2+fd845f65c",
3
+ "version": "1.31.0-next.29+6ca2cfb56",
4
4
  "description": "Theia - Debug Extension",
5
5
  "dependencies": {
6
- "@theia/console": "1.31.0-next.2+fd845f65c",
7
- "@theia/core": "1.31.0-next.2+fd845f65c",
8
- "@theia/editor": "1.31.0-next.2+fd845f65c",
9
- "@theia/filesystem": "1.31.0-next.2+fd845f65c",
10
- "@theia/markers": "1.31.0-next.2+fd845f65c",
11
- "@theia/monaco": "1.31.0-next.2+fd845f65c",
6
+ "@theia/console": "1.31.0-next.29+6ca2cfb56",
7
+ "@theia/core": "1.31.0-next.29+6ca2cfb56",
8
+ "@theia/editor": "1.31.0-next.29+6ca2cfb56",
9
+ "@theia/filesystem": "1.31.0-next.29+6ca2cfb56",
10
+ "@theia/markers": "1.31.0-next.29+6ca2cfb56",
11
+ "@theia/monaco": "1.31.0-next.29+6ca2cfb56",
12
12
  "@theia/monaco-editor-core": "1.67.2",
13
- "@theia/output": "1.31.0-next.2+fd845f65c",
14
- "@theia/process": "1.31.0-next.2+fd845f65c",
15
- "@theia/task": "1.31.0-next.2+fd845f65c",
16
- "@theia/terminal": "1.31.0-next.2+fd845f65c",
17
- "@theia/variable-resolver": "1.31.0-next.2+fd845f65c",
18
- "@theia/workspace": "1.31.0-next.2+fd845f65c",
13
+ "@theia/output": "1.31.0-next.29+6ca2cfb56",
14
+ "@theia/process": "1.31.0-next.29+6ca2cfb56",
15
+ "@theia/task": "1.31.0-next.29+6ca2cfb56",
16
+ "@theia/terminal": "1.31.0-next.29+6ca2cfb56",
17
+ "@theia/variable-resolver": "1.31.0-next.29+6ca2cfb56",
18
+ "@theia/workspace": "1.31.0-next.29+6ca2cfb56",
19
19
  "@vscode/debugprotocol": "^1.51.0",
20
20
  "jsonc-parser": "^2.2.0",
21
21
  "mkdirp": "^0.5.0",
@@ -68,5 +68,5 @@
68
68
  "nyc": {
69
69
  "extends": "../../configs/nyc.json"
70
70
  },
71
- "gitHead": "fd845f65c84bcc5b8064f04c621ae6b6baa014a0"
71
+ "gitHead": "6ca2cfb56125cd93bda95be3ba705aa4c7da62fe"
72
72
  }
@@ -14,7 +14,9 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- import { AbstractViewContribution, KeybindingRegistry, Widget, CompositeTreeNode, LabelProvider, codicon } from '@theia/core/lib/browser';
17
+ import {
18
+ AbstractViewContribution, KeybindingRegistry, Widget, CompositeTreeNode, LabelProvider, codicon, OnWillStopAction, FrontendApplicationContribution, ConfirmDialog, Dialog
19
+ } from '@theia/core/lib/browser';
18
20
  import { injectable, inject } from '@theia/core/shared/inversify';
19
21
  import * as monaco from '@theia/monaco-editor-core';
20
22
  import { MenuModelRegistry, CommandRegistry, MAIN_MENU_BAR, Command, Emitter, Mutable } from '@theia/core/lib/common';
@@ -380,7 +382,8 @@ export namespace DebugBreakpointWidgetCommands {
380
382
  }
381
383
 
382
384
  @injectable()
383
- export class DebugFrontendApplicationContribution extends AbstractViewContribution<DebugWidget> implements TabBarToolbarContribution, ColorContribution {
385
+ export class DebugFrontendApplicationContribution extends AbstractViewContribution<DebugWidget>
386
+ implements TabBarToolbarContribution, ColorContribution, FrontendApplicationContribution {
384
387
 
385
388
  @inject(DebugService)
386
389
  protected readonly debug: DebugService;
@@ -473,8 +476,27 @@ export class DebugFrontendApplicationContribution extends AbstractViewContributi
473
476
  this.watchManager.save();
474
477
  }
475
478
 
476
- onWillStop(): boolean {
477
- return this.preference['debug.confirmOnExit'] === 'always' && !!this.manager.currentSession;
479
+ onWillStop(): OnWillStopAction | undefined {
480
+ if (this.preference['debug.confirmOnExit'] === 'always' && this.manager.currentSession) {
481
+ return {
482
+ reason: 'active-debug-sessions',
483
+ action: async () => {
484
+ if (this.manager.currentSession) {
485
+ const msg = this.manager.sessions.length === 1
486
+ ? nls.localize('theia/debug/debugSessionActive', 'There is an active debug session, are you sure you want to stop it?')
487
+ : nls.localize('theia/debug/debugSessionActiveMultiple', 'There are active debug sessions, are you sure you want to stop them?');
488
+ const safeToExit = await new ConfirmDialog({
489
+ title: '',
490
+ msg,
491
+ ok: nls.localizeByDefault('Stop Debugging'),
492
+ cancel: Dialog.CANCEL,
493
+ }).open();
494
+ return safeToExit === true;
495
+ }
496
+ return true;
497
+ },
498
+ };
499
+ }
478
500
  }
479
501
 
480
502
  override registerMenus(menus: MenuModelRegistry): void {
@@ -20,18 +20,21 @@
20
20
  *--------------------------------------------------------------------------------------------*/
21
21
  // Based on https://github.com/theia-ide/vscode/blob/standalone/0.19.x/src/vs/workbench/contrib/debug/browser/debugEditorContribution.ts
22
22
 
23
+ import { FrontendApplicationContribution } from '@theia/core/lib/browser/frontend-application';
23
24
  import { inject, injectable } from '@theia/core/shared/inversify';
24
25
  import * as monaco from '@theia/monaco-editor-core';
26
+ import { CancellationTokenSource } from '@theia/monaco-editor-core/esm/vs/base/common/cancellation';
27
+ import { DEFAULT_WORD_REGEXP } from '@theia/monaco-editor-core/esm/vs/editor/common/core/wordHelper';
25
28
  import { IDecorationOptions } from '@theia/monaco-editor-core/esm/vs/editor/common/editorCommon';
29
+ import { InlineValueContext, StandardTokenType } from '@theia/monaco-editor-core/esm/vs/editor/common/languages';
26
30
  import { ITextModel } from '@theia/monaco-editor-core/esm/vs/editor/common/model';
27
- import { StandardTokenType } from '@theia/monaco-editor-core/esm/vs/editor/common/languages';
28
- import { DEFAULT_WORD_REGEXP } from '@theia/monaco-editor-core/esm/vs/editor/common/core/wordHelper';
29
- import { FrontendApplicationContribution } from '@theia/core/lib/browser/frontend-application';
31
+ import { ILanguageFeaturesService } from '@theia/monaco-editor-core/esm/vs/editor/common/services/languageFeatures';
32
+ import { StandaloneServices } from '@theia/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneServices';
30
33
  import { MonacoEditorService } from '@theia/monaco/lib/browser/monaco-editor-service';
31
- import { ExpressionContainer, DebugVariable } from '../console/debug-console-items';
34
+ import { DebugVariable, ExpressionContainer, ExpressionItem } from '../console/debug-console-items';
32
35
  import { DebugPreferences } from '../debug-preferences';
33
- import { DebugEditorModel } from './debug-editor-model';
34
36
  import { DebugStackFrame } from '../model/debug-stack-frame';
37
+ import { DebugEditorModel } from './debug-editor-model';
35
38
 
36
39
  // https://github.com/theia-ide/vscode/blob/standalone/0.19.x/src/vs/workbench/contrib/debug/browser/debugEditorContribution.ts#L40-L43
37
40
  export const INLINE_VALUE_DECORATION_KEY = 'inlinevaluedecoration';
@@ -48,6 +51,11 @@ const MAX_TOKENIZATION_LINE_LEN = 500; // If line is too long, then inline value
48
51
  // https://github.com/theia-ide/vscode/blob/standalone/0.19.x/src/vs/base/common/uint.ts#L7-L13
49
52
  const MAX_SAFE_SMALL_INTEGER = 1 << 30;
50
53
 
54
+ class InlineSegment {
55
+ constructor(public column: number, public text: string) {
56
+ }
57
+ }
58
+
51
59
  @injectable()
52
60
  export class DebugInlineValueDecorator implements FrontendApplicationContribution {
53
61
 
@@ -73,11 +81,12 @@ export class DebugInlineValueDecorator implements FrontendApplicationContributio
73
81
  async calculateDecorations(debugEditorModel: DebugEditorModel, stackFrame: DebugStackFrame | undefined): Promise<IDecorationOptions[]> {
74
82
  this.wordToLineNumbersMap = undefined;
75
83
  const model = debugEditorModel.editor.getControl().getModel() || undefined;
76
- return this.updateInlineValueDecorations(model, stackFrame);
84
+ return this.updateInlineValueDecorations(debugEditorModel, model, stackFrame);
77
85
  }
78
86
 
79
87
  // https://github.com/theia-ide/vscode/blob/standalone/0.19.x/src/vs/workbench/contrib/debug/browser/debugEditorContribution.ts#L382-L408
80
88
  protected async updateInlineValueDecorations(
89
+ debugEditorModel: DebugEditorModel,
81
90
  model: monaco.editor.ITextModel | undefined,
82
91
  stackFrame: DebugStackFrame | undefined): Promise<IDecorationOptions[]> {
83
92
 
@@ -101,63 +110,188 @@ export class DebugInlineValueDecorator implements FrontendApplicationContributio
101
110
  range = range.setStartPosition(scope.range.startLineNumber, scope.range.startColumn);
102
111
  }
103
112
 
104
- return this.createInlineValueDecorationsInsideRange(children, range, model);
113
+ return this.createInlineValueDecorationsInsideRange(children, range, model, debugEditorModel, stackFrame);
105
114
  }));
106
115
 
107
116
  return decorationsPerScope.reduce((previous, current) => previous.concat(current), []);
108
117
  }
109
118
 
110
119
  // https://github.com/theia-ide/vscode/blob/standalone/0.19.x/src/vs/workbench/contrib/debug/browser/debugEditorContribution.ts#L410-L452
111
- private createInlineValueDecorationsInsideRange(
120
+ private async createInlineValueDecorationsInsideRange(
112
121
  expressions: ReadonlyArray<ExpressionContainer>,
113
122
  range: monaco.Range,
114
- model: monaco.editor.ITextModel): IDecorationOptions[] {
123
+ model: monaco.editor.ITextModel,
124
+ debugEditorModel: DebugEditorModel,
125
+ stackFrame: DebugStackFrame): Promise<IDecorationOptions[]> {
115
126
 
116
- const nameValueMap = new Map<string, string>();
117
- for (const expr of expressions) {
118
- if (expr instanceof DebugVariable) { // XXX: VS Code uses `IExpression` that has `name` and `value`.
119
- nameValueMap.set(expr.name, expr.value);
120
- }
121
- // Limit the size of map. Too large can have a perf impact
122
- if (nameValueMap.size >= MAX_NUM_INLINE_VALUES) {
123
- break;
124
- }
125
- }
127
+ const decorations: IDecorationOptions[] = [];
126
128
 
127
- const lineToNamesMap: Map<number, string[]> = new Map<number, string[]>();
128
- const wordToPositionsMap = this.getWordToPositionsMap(model);
129
-
130
- // Compute unique set of names on each line
131
- nameValueMap.forEach((_, name) => {
132
- const positions = wordToPositionsMap.get(name);
133
- if (positions) {
134
- for (const position of positions) {
135
- if (range.containsPosition(position)) {
136
- if (!lineToNamesMap.has(position.lineNumber)) {
137
- lineToNamesMap.set(position.lineNumber, []);
129
+ const inlineValuesProvider = StandaloneServices.get(ILanguageFeaturesService).inlineValuesProvider;
130
+ const textEditorModel = debugEditorModel.editor.document.textEditorModel;
131
+
132
+ if (inlineValuesProvider && inlineValuesProvider.has(textEditorModel)) {
133
+
134
+ const findVariable = async (variableName: string, caseSensitiveLookup: boolean): Promise<DebugVariable | undefined> => {
135
+ const scopes = await stackFrame.getMostSpecificScopes(stackFrame.range!);
136
+ const key = caseSensitiveLookup ? variableName : variableName.toLowerCase();
137
+ for (const scope of scopes) {
138
+ const expressionContainers = await scope.getElements();
139
+ let container = expressionContainers.next();
140
+ while (!container.done) {
141
+ const debugVariable = container.value;
142
+ if (debugVariable && debugVariable instanceof DebugVariable) {
143
+ if (caseSensitiveLookup) {
144
+ if (debugVariable.name === key) {
145
+ return debugVariable;
146
+ }
147
+ } else {
148
+ if (debugVariable.name.toLowerCase() === key) {
149
+ return debugVariable;
150
+ }
151
+ }
138
152
  }
153
+ container = expressionContainers.next();
154
+ }
155
+ }
156
+ return undefined;
157
+ };
158
+
159
+ const context: InlineValueContext = {
160
+ frameId: stackFrame.raw.id,
161
+ stoppedLocation: range
162
+ };
163
+
164
+ const cancellationToken = new CancellationTokenSource().token;
165
+ const registeredProviders = inlineValuesProvider.ordered(textEditorModel).reverse();
166
+ const visibleRanges = debugEditorModel.editor.getControl().getVisibleRanges();
167
+
168
+ const lineDecorations = new Map<number, InlineSegment[]>();
169
+
170
+ for (const provider of registeredProviders) {
171
+ for (const visibleRange of visibleRanges) {
172
+ const result = await provider.provideInlineValues(textEditorModel, visibleRange, context, cancellationToken);
173
+ if (result) {
174
+ for (const inlineValue of result) {
175
+ let text: string | undefined = undefined;
176
+ switch (inlineValue.type) {
177
+ case 'text':
178
+ text = inlineValue.text;
179
+ break;
180
+ case 'variable': {
181
+ let varName = inlineValue.variableName;
182
+ if (!varName) {
183
+ const lineContent = model.getLineContent(inlineValue.range.startLineNumber);
184
+ varName = lineContent.substring(inlineValue.range.startColumn - 1, inlineValue.range.endColumn - 1);
185
+ }
186
+ const variable = await findVariable(varName, inlineValue.caseSensitiveLookup);
187
+ if (variable) {
188
+ text = this.formatInlineValue(varName, variable.value);
189
+ }
190
+ break;
191
+ }
192
+ case 'expression': {
193
+ let expr = inlineValue.expression;
194
+ if (!expr) {
195
+ const lineContent = model.getLineContent(inlineValue.range.startLineNumber);
196
+ expr = lineContent.substring(inlineValue.range.startColumn - 1, inlineValue.range.endColumn - 1);
197
+ }
198
+ if (expr) {
199
+ const expression = new ExpressionItem(expr, () => stackFrame.thread.session);
200
+ await expression.evaluate('watch');
201
+ if (expression.available) {
202
+ text = this.formatInlineValue(expr, expression.value);
203
+ }
204
+ }
205
+ break;
206
+ }
207
+ }
139
208
 
140
- if (lineToNamesMap.get(position.lineNumber)!.indexOf(name) === -1) {
141
- lineToNamesMap.get(position.lineNumber)!.push(name);
209
+ if (text) {
210
+ const line = inlineValue.range.startLineNumber;
211
+ let lineSegments = lineDecorations.get(line);
212
+ if (!lineSegments) {
213
+ lineSegments = [];
214
+ lineDecorations.set(line, lineSegments);
215
+ }
216
+ if (!lineSegments.some(segment => segment.text === text)) {
217
+ lineSegments.push(new InlineSegment(inlineValue.range.startColumn, text));
218
+ }
219
+ }
142
220
  }
143
221
  }
144
222
  }
223
+ };
224
+
225
+ // sort line segments and concatenate them into a decoration
226
+ const separator = ', ';
227
+ lineDecorations.forEach((segments, line) => {
228
+ if (segments.length > 0) {
229
+ segments = segments.sort((a, b) => a.column - b.column);
230
+ const text = segments.map(s => s.text).join(separator);
231
+ decorations.push(this.createInlineValueDecoration(line, text));
232
+ }
233
+ });
234
+
235
+ } else { // use fallback if no provider was registered
236
+ const lineToNamesMap: Map<number, string[]> = new Map<number, string[]>();
237
+ const nameValueMap = new Map<string, string>();
238
+ for (const expr of expressions) {
239
+ if (expr instanceof DebugVariable) { // XXX: VS Code uses `IExpression` that has `name` and `value`.
240
+ nameValueMap.set(expr.name, expr.value);
241
+ }
242
+ // Limit the size of map. Too large can have a perf impact
243
+ if (nameValueMap.size >= MAX_NUM_INLINE_VALUES) {
244
+ break;
245
+ }
145
246
  }
146
- });
147
247
 
148
- const decorations: IDecorationOptions[] = [];
149
- // Compute decorators for each line
150
- lineToNamesMap.forEach((names, line) => {
151
- const contentText = names.sort((first, second) => {
152
- const content = model.getLineContent(line);
153
- return content.indexOf(first) - content.indexOf(second);
154
- }).map(name => `${name} = ${nameValueMap.get(name)}`).join(', ');
155
- decorations.push(this.createInlineValueDecoration(line, contentText));
156
- });
248
+ const wordToPositionsMap = this.getWordToPositionsMap(model);
249
+
250
+ // Compute unique set of names on each line
251
+ nameValueMap.forEach((_, name) => {
252
+ const positions = wordToPositionsMap.get(name);
253
+ if (positions) {
254
+ for (const position of positions) {
255
+ if (range.containsPosition(position)) {
256
+ if (!lineToNamesMap.has(position.lineNumber)) {
257
+ lineToNamesMap.set(position.lineNumber, []);
258
+ }
259
+
260
+ if (lineToNamesMap.get(position.lineNumber)!.indexOf(name) === -1) {
261
+ lineToNamesMap.get(position.lineNumber)!.push(name);
262
+ }
263
+ }
264
+ }
265
+ }
266
+ });
267
+
268
+ // Compute decorators for each line
269
+ lineToNamesMap.forEach((names, line) => {
270
+ const contentText = names.sort((first, second) => {
271
+ const content = model.getLineContent(line);
272
+ return content.indexOf(first) - content.indexOf(second);
273
+ }).map(name => `${name} = ${nameValueMap.get(name)}`).join(', ');
274
+ decorations.push(this.createInlineValueDecoration(line, contentText));
275
+ });
276
+ }
157
277
 
158
278
  return decorations;
159
279
  }
160
280
 
281
+ protected formatInlineValue(...args: string[]): string {
282
+ const valuePattern = '{0} = {1}';
283
+ const formatRegExp = /{(\d+)}/g;
284
+ if (args.length === 0) {
285
+ return valuePattern;
286
+ }
287
+ return valuePattern.replace(formatRegExp, (match, group) => {
288
+ const idx = parseInt(group, 10);
289
+ return isNaN(idx) || idx < 0 || idx >= args.length ?
290
+ match :
291
+ args[idx];
292
+ });
293
+ }
294
+
161
295
  // https://github.com/theia-ide/vscode/blob/standalone/0.19.x/src/vs/workbench/contrib/debug/browser/debugEditorContribution.ts#L454-L485
162
296
  private createInlineValueDecoration(lineNumber: number, contentText: string): IDecorationOptions {
163
297
  // If decoratorText is too long, trim and add ellipses. This could happen for minified files with everything on a single line