@codingame/monaco-vscode-debug-service-override 4.5.0 → 4.5.2
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.
- package/index.d.ts +1 -1
- package/package.json +2 -2
- package/vscode/src/vs/platform/debug/common/extensionHostDebugIpc.js +2 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackView.js +105 -150
- package/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.js +258 -529
- package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +28 -48
- package/vscode/src/vs/workbench/contrib/debug/browser/debugAdapterManager.js +44 -71
- package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +84 -163
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConfigurationManager.js +116 -120
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConsoleQuickAccess.js +7 -10
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorActions.js +78 -140
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +72 -75
- package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +25 -28
- package/vscode/src/vs/workbench/contrib/debug/browser/debugMemory.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/debugQuickAccess.js +16 -48
- package/vscode/src/vs/workbench/contrib/debug/browser/debugService.js +140 -132
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSession.js +218 -175
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +5 -18
- package/vscode/src/vs/workbench/contrib/debug/browser/debugStatus.js +9 -17
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTaskRunner.js +69 -110
- package/vscode/src/vs/workbench/contrib/debug/browser/debugToolBar.js +68 -53
- package/vscode/src/vs/workbench/contrib/debug/browser/debugViewlet.js +77 -56
- package/vscode/src/vs/workbench/contrib/debug/browser/disassemblyView.js +50 -75
- package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +13 -29
- package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +22 -51
- package/vscode/src/vs/workbench/contrib/debug/browser/loadedScriptsView.js +47 -73
- package/vscode/src/vs/workbench/contrib/debug/browser/rawDebugSession.js +60 -76
- package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +14 -43
- package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +23 -42
- package/vscode/src/vs/workbench/contrib/debug/browser/statusbarColorProvider.js +17 -16
- package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +56 -94
- package/vscode/src/vs/workbench/contrib/debug/browser/watchExpressionsView.js +40 -79
- package/vscode/src/vs/workbench/contrib/debug/browser/welcomeView.js +55 -57
- package/vscode/src/vs/workbench/contrib/debug/common/debugContentProvider.js +14 -28
- package/vscode/src/vs/workbench/contrib/debug/common/debugLifecycle.js +12 -15
- package/vscode/src/vs/workbench/contrib/debug/common/debugSchemas.js +71 -146
- package/vscode/src/vs/workbench/contrib/debug/common/debugger.js +92 -111
- package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +5 -8
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariableCommands.js +5 -12
- package/vscode/src/vs/workbench/services/configurationResolver/browser/baseConfigurationResolverService.js +42 -22
- package/debug.d.ts +0 -5
|
@@ -19,14 +19,15 @@ import { IStatusbarService } from 'vscode/vscode/vs/workbench/services/statusbar
|
|
|
19
19
|
import { IConfigurationService } from 'vscode/vscode/vs/platform/configuration/common/configuration.service';
|
|
20
20
|
import { ILayoutService } from 'vscode/vscode/vs/platform/layout/browser/layoutService.service';
|
|
21
21
|
|
|
22
|
+
const _moduleId = "vs/workbench/contrib/debug/browser/statusbarColorProvider";
|
|
22
23
|
const STATUS_BAR_DEBUGGING_BACKGROUND = registerColor('statusBar.debuggingBackground', {
|
|
23
24
|
dark: '#CC6633',
|
|
24
25
|
light: '#CC6633',
|
|
25
26
|
hcDark: '#BA592C',
|
|
26
27
|
hcLight: '#B5200D'
|
|
27
28
|
}, ( localizeWithPath(
|
|
28
|
-
|
|
29
|
-
|
|
29
|
+
_moduleId,
|
|
30
|
+
0,
|
|
30
31
|
"Status bar background color when a program is being debugged. The status bar is shown in the bottom of the window"
|
|
31
32
|
)));
|
|
32
33
|
const STATUS_BAR_DEBUGGING_FOREGROUND = registerColor('statusBar.debuggingForeground', {
|
|
@@ -35,8 +36,8 @@ const STATUS_BAR_DEBUGGING_FOREGROUND = registerColor('statusBar.debuggingForegr
|
|
|
35
36
|
hcDark: STATUS_BAR_FOREGROUND,
|
|
36
37
|
hcLight: '#FFFFFF'
|
|
37
38
|
}, ( localizeWithPath(
|
|
38
|
-
|
|
39
|
-
|
|
39
|
+
_moduleId,
|
|
40
|
+
1,
|
|
40
41
|
"Status bar foreground color when a program is being debugged. The status bar is shown in the bottom of the window"
|
|
41
42
|
)));
|
|
42
43
|
const STATUS_BAR_DEBUGGING_BORDER = registerColor('statusBar.debuggingBorder', {
|
|
@@ -45,8 +46,8 @@ const STATUS_BAR_DEBUGGING_BORDER = registerColor('statusBar.debuggingBorder', {
|
|
|
45
46
|
hcDark: STATUS_BAR_BORDER,
|
|
46
47
|
hcLight: STATUS_BAR_BORDER
|
|
47
48
|
}, ( localizeWithPath(
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
_moduleId,
|
|
50
|
+
2,
|
|
50
51
|
"Status bar border color separating to the sidebar and editor when a program is being debugged. The status bar is shown in the bottom of the window"
|
|
51
52
|
)));
|
|
52
53
|
const COMMAND_CENTER_DEBUGGING_BACKGROUND = registerColor('commandCenter.debuggingBackground', {
|
|
@@ -55,8 +56,8 @@ const COMMAND_CENTER_DEBUGGING_BACKGROUND = registerColor('commandCenter.debuggi
|
|
|
55
56
|
light: { value: STATUS_BAR_DEBUGGING_BACKGROUND, op: 2 , factor: 0.258 },
|
|
56
57
|
hcLight: { value: STATUS_BAR_DEBUGGING_BACKGROUND, op: 2 , factor: 0.258 }
|
|
57
58
|
}, ( localizeWithPath(
|
|
58
|
-
|
|
59
|
-
|
|
59
|
+
_moduleId,
|
|
60
|
+
3,
|
|
60
61
|
"Command center background color when a program is being debugged"
|
|
61
62
|
)), true);
|
|
62
63
|
let StatusBarColorProvider = class StatusBarColorProvider {
|
|
@@ -83,7 +84,7 @@ let StatusBarColorProvider = class StatusBarColorProvider {
|
|
|
83
84
|
this.statusbarService = statusbarService;
|
|
84
85
|
this.layoutService = layoutService;
|
|
85
86
|
this.configurationService = configurationService;
|
|
86
|
-
this.disposables = ( new DisposableStore());
|
|
87
|
+
this.disposables = ( (new DisposableStore()));
|
|
87
88
|
this.debugService.onDidChangeState(this.update, this, this.disposables);
|
|
88
89
|
this.contextService.onDidChangeWorkbenchState(this.update, this, this.disposables);
|
|
89
90
|
this.configurationService.onDidChangeConfiguration((e) => {
|
|
@@ -112,13 +113,13 @@ let StatusBarColorProvider = class StatusBarColorProvider {
|
|
|
112
113
|
this.disposables.dispose();
|
|
113
114
|
}
|
|
114
115
|
};
|
|
115
|
-
StatusBarColorProvider = ( __decorate([
|
|
116
|
-
( __param(0, IDebugService)),
|
|
117
|
-
( __param(1, IWorkspaceContextService)),
|
|
118
|
-
( __param(2, IStatusbarService)),
|
|
119
|
-
( __param(3, ILayoutService)),
|
|
120
|
-
( __param(4, IConfigurationService))
|
|
121
|
-
], StatusBarColorProvider));
|
|
116
|
+
StatusBarColorProvider = ( (__decorate([
|
|
117
|
+
( (__param(0, IDebugService))),
|
|
118
|
+
( (__param(1, IWorkspaceContextService))),
|
|
119
|
+
( (__param(2, IStatusbarService))),
|
|
120
|
+
( (__param(3, ILayoutService))),
|
|
121
|
+
( (__param(4, IConfigurationService)))
|
|
122
|
+
], StatusBarColorProvider)));
|
|
122
123
|
function isStatusbarInDebugMode(state, sessions) {
|
|
123
124
|
if (state === 0 || state === 1 || sessions.every(s => s.suppressDebugStatusbar || s.configuration?.noDebug)) {
|
|
124
125
|
return false;
|
|
@@ -41,6 +41,7 @@ import { IEditorService } from 'vscode/vscode/vs/workbench/services/editor/commo
|
|
|
41
41
|
import { IExtensionService } from 'vscode/vscode/vs/workbench/services/extensions/common/extensions.service';
|
|
42
42
|
|
|
43
43
|
var VisualizedVariableRenderer_1, VariablesRenderer_1;
|
|
44
|
+
const _moduleId = "vs/workbench/contrib/debug/browser/variablesView";
|
|
44
45
|
const $ = $$1;
|
|
45
46
|
let forgetScopes = true;
|
|
46
47
|
let variableInternalContext;
|
|
@@ -51,9 +52,9 @@ let VariablesView = class VariablesView extends ViewPane {
|
|
|
51
52
|
this.debugService = debugService;
|
|
52
53
|
this.menuService = menuService;
|
|
53
54
|
this.needsRefresh = false;
|
|
54
|
-
this.savedViewState = ( new Map());
|
|
55
|
-
this.autoExpandedScopes = ( new Set());
|
|
56
|
-
this.updateTreeScheduler = ( new RunOnceScheduler(async () => {
|
|
55
|
+
this.savedViewState = ( (new Map()));
|
|
56
|
+
this.autoExpandedScopes = ( (new Set()));
|
|
57
|
+
this.updateTreeScheduler = ( (new RunOnceScheduler(async () => {
|
|
57
58
|
const stackFrame = this.debugService.getViewModel().focusedStackFrame;
|
|
58
59
|
this.needsRefresh = false;
|
|
59
60
|
const input = this.tree.getInput();
|
|
@@ -72,7 +73,7 @@ let VariablesView = class VariablesView extends ViewPane {
|
|
|
72
73
|
this.autoExpandedScopes.add(toExpand.getId());
|
|
73
74
|
await this.tree.expand(toExpand);
|
|
74
75
|
}
|
|
75
|
-
}, 400));
|
|
76
|
+
}, 400)));
|
|
76
77
|
}
|
|
77
78
|
renderBody(container) {
|
|
78
79
|
super.renderBody(container);
|
|
@@ -80,13 +81,13 @@ let VariablesView = class VariablesView extends ViewPane {
|
|
|
80
81
|
container.classList.add('debug-variables');
|
|
81
82
|
const treeContainer = renderViewTree(container);
|
|
82
83
|
const linkDetector = this.instantiationService.createInstance(LinkDetector);
|
|
83
|
-
this.tree = this.instantiationService.createInstance(WorkbenchAsyncDataTree, 'VariablesView', treeContainer, ( new VariablesDelegate()), [
|
|
84
|
+
this.tree = this.instantiationService.createInstance(WorkbenchAsyncDataTree, 'VariablesView', treeContainer, ( (new VariablesDelegate())), [
|
|
84
85
|
this.instantiationService.createInstance(VariablesRenderer, linkDetector),
|
|
85
86
|
this.instantiationService.createInstance(VisualizedVariableRenderer, linkDetector),
|
|
86
|
-
( new ScopesRenderer()),
|
|
87
|
-
( new ScopeErrorRenderer()),
|
|
87
|
+
( (new ScopesRenderer())),
|
|
88
|
+
( (new ScopeErrorRenderer())),
|
|
88
89
|
], this.instantiationService.createInstance(VariablesDataSource), {
|
|
89
|
-
accessibilityProvider: ( new VariablesAccessibilityProvider()),
|
|
90
|
+
accessibilityProvider: ( (new VariablesAccessibilityProvider())),
|
|
90
91
|
identityProvider: { getId: (element) => element.getId() },
|
|
91
92
|
keyboardNavigationLabelProvider: { getKeyboardNavigationLabel: (e) => e.name },
|
|
92
93
|
overrideStyles: {
|
|
@@ -180,25 +181,25 @@ let VariablesView = class VariablesView extends ViewPane {
|
|
|
180
181
|
return openContextMenuForVariableTreeElement(this.contextKeyService, this.menuService, this.contextMenuService, MenuId.DebugVariablesContext, e);
|
|
181
182
|
}
|
|
182
183
|
};
|
|
183
|
-
VariablesView = ( __decorate([
|
|
184
|
-
( __param(1, IContextMenuService)),
|
|
185
|
-
( __param(2, IDebugService)),
|
|
186
|
-
( __param(3, IKeybindingService)),
|
|
187
|
-
( __param(4, IConfigurationService)),
|
|
188
|
-
( __param(5, IInstantiationService)),
|
|
189
|
-
( __param(6, IViewDescriptorService)),
|
|
190
|
-
( __param(7, IContextKeyService)),
|
|
191
|
-
( __param(8, IOpenerService)),
|
|
192
|
-
( __param(9, IThemeService)),
|
|
193
|
-
( __param(10, ITelemetryService)),
|
|
194
|
-
( __param(11, IMenuService))
|
|
195
|
-
], VariablesView));
|
|
184
|
+
VariablesView = ( (__decorate([
|
|
185
|
+
( (__param(1, IContextMenuService))),
|
|
186
|
+
( (__param(2, IDebugService))),
|
|
187
|
+
( (__param(3, IKeybindingService))),
|
|
188
|
+
( (__param(4, IConfigurationService))),
|
|
189
|
+
( (__param(5, IInstantiationService))),
|
|
190
|
+
( (__param(6, IViewDescriptorService))),
|
|
191
|
+
( (__param(7, IContextKeyService))),
|
|
192
|
+
( (__param(8, IOpenerService))),
|
|
193
|
+
( (__param(9, IThemeService))),
|
|
194
|
+
( (__param(10, ITelemetryService))),
|
|
195
|
+
( (__param(11, IMenuService)))
|
|
196
|
+
], VariablesView)));
|
|
196
197
|
async function openContextMenuForVariableTreeElement(parentContextKeyService, menuService, contextMenuService, menuId, e) {
|
|
197
198
|
const variable = e.element;
|
|
198
199
|
if (!(variable instanceof Variable) || !variable.value) {
|
|
199
200
|
return;
|
|
200
201
|
}
|
|
201
|
-
const toDispose = ( new DisposableStore());
|
|
202
|
+
const toDispose = ( (new DisposableStore()));
|
|
202
203
|
try {
|
|
203
204
|
const contextKeyService = await getContextForVariableMenuWithDataAccess(parentContextKeyService, variable);
|
|
204
205
|
const menu = toDispose.add(menuService.createMenu(menuId, contextKeyService));
|
|
@@ -298,7 +299,7 @@ class ScopesRenderer {
|
|
|
298
299
|
}
|
|
299
300
|
renderTemplate(container) {
|
|
300
301
|
const name = append(container, $('.scope'));
|
|
301
|
-
const label = ( new HighlightedLabel(name));
|
|
302
|
+
const label = ( (new HighlightedLabel(name)));
|
|
302
303
|
return { name, label };
|
|
303
304
|
}
|
|
304
305
|
renderElement(element, index, templateData) {
|
|
@@ -367,11 +368,7 @@ let VisualizedVariableRenderer = class VisualizedVariableRenderer extends Abstra
|
|
|
367
368
|
const viz = expression;
|
|
368
369
|
return {
|
|
369
370
|
initialValue: expression.value,
|
|
370
|
-
ariaLabel: ( localizeWithPath(
|
|
371
|
-
'vs/workbench/contrib/debug/browser/variablesView',
|
|
372
|
-
'variableValueAriaLabel',
|
|
373
|
-
"Type new variable value"
|
|
374
|
-
)),
|
|
371
|
+
ariaLabel: ( localizeWithPath(_moduleId, 0, "Type new variable value")),
|
|
375
372
|
validationOptions: {
|
|
376
373
|
validation: () => viz.errorMessage ? ({ content: viz.errorMessage }) : null
|
|
377
374
|
},
|
|
@@ -394,11 +391,7 @@ let VisualizedVariableRenderer = class VisualizedVariableRenderer extends Abstra
|
|
|
394
391
|
const context = viz.original ? getVariablesContext(viz.original) : undefined;
|
|
395
392
|
createAndFillInContextMenuActions(menu, { arg: context, shouldForwardArgs: false }, { primary, secondary: [] }, 'inline');
|
|
396
393
|
if (viz.original) {
|
|
397
|
-
const action = ( new Action('debugViz', ( localizeWithPath(
|
|
398
|
-
'vs/workbench/contrib/debug/browser/variablesView',
|
|
399
|
-
'removeVisualizer',
|
|
400
|
-
'Remove Visualizer'
|
|
401
|
-
)), ThemeIcon.asClassName(Codicon.eye), true, () => this.debugService.getViewModel().setVisualizedExpression(viz.original, undefined)));
|
|
394
|
+
const action = ( (new Action('debugViz', ( localizeWithPath(_moduleId, 1, 'Remove Visualizer')), ThemeIcon.asClassName(Codicon.eye), true, () => this.debugService.getViewModel().setVisualizedExpression(viz.original, undefined))));
|
|
402
395
|
action.checked = true;
|
|
403
396
|
primary.push(action);
|
|
404
397
|
actionBar.domNode.style.display = 'initial';
|
|
@@ -408,12 +401,12 @@ let VisualizedVariableRenderer = class VisualizedVariableRenderer extends Abstra
|
|
|
408
401
|
actionBar.push(primary, { icon: true, label: false });
|
|
409
402
|
}
|
|
410
403
|
};
|
|
411
|
-
VisualizedVariableRenderer = VisualizedVariableRenderer_1 = ( __decorate([
|
|
412
|
-
( __param(1, IDebugService)),
|
|
413
|
-
( __param(2, IContextViewService)),
|
|
414
|
-
( __param(3, IMenuService)),
|
|
415
|
-
( __param(4, IContextKeyService))
|
|
416
|
-
], VisualizedVariableRenderer));
|
|
404
|
+
VisualizedVariableRenderer = VisualizedVariableRenderer_1 = ( (__decorate([
|
|
405
|
+
( (__param(1, IDebugService))),
|
|
406
|
+
( (__param(2, IContextViewService))),
|
|
407
|
+
( (__param(3, IMenuService))),
|
|
408
|
+
( (__param(4, IContextKeyService)))
|
|
409
|
+
], VisualizedVariableRenderer)));
|
|
417
410
|
let VariablesRenderer = class VariablesRenderer extends AbstractExpressionsRenderer {
|
|
418
411
|
static { VariablesRenderer_1 = this; }
|
|
419
412
|
static { this.ID = 'variable'; }
|
|
@@ -438,11 +431,7 @@ let VariablesRenderer = class VariablesRenderer extends AbstractExpressionsRende
|
|
|
438
431
|
const variable = expression;
|
|
439
432
|
return {
|
|
440
433
|
initialValue: expression.value,
|
|
441
|
-
ariaLabel: ( localizeWithPath(
|
|
442
|
-
'vs/workbench/contrib/debug/browser/variablesView',
|
|
443
|
-
'variableValueAriaLabel',
|
|
444
|
-
"Type new variable value"
|
|
445
|
-
)),
|
|
434
|
+
ariaLabel: ( localizeWithPath(_moduleId, 0, "Type new variable value")),
|
|
446
435
|
validationOptions: {
|
|
447
436
|
validation: () => variable.errorMessage ? ({ content: variable.errorMessage }) : null
|
|
448
437
|
},
|
|
@@ -469,28 +458,24 @@ let VariablesRenderer = class VariablesRenderer extends AbstractExpressionsRende
|
|
|
469
458
|
actionBar.clear();
|
|
470
459
|
actionBar.context = context;
|
|
471
460
|
actionBar.push(primary, { icon: true, label: false });
|
|
472
|
-
const cts = ( new CancellationTokenSource());
|
|
461
|
+
const cts = ( (new CancellationTokenSource()));
|
|
473
462
|
data.elementDisposable.add(toDisposable(() => cts.dispose(true)));
|
|
474
463
|
this.visualization.getApplicableFor(expression, cts.token).then(result => {
|
|
475
464
|
data.elementDisposable.add(result);
|
|
476
465
|
const originalExpression = (expression instanceof VisualizedExpression && expression.original) || expression;
|
|
477
|
-
const actions = ( result.object.map(v => ( new Action(
|
|
466
|
+
const actions = ( (result.object.map(v => ( (new Action(
|
|
478
467
|
'debugViz',
|
|
479
468
|
v.name,
|
|
480
469
|
v.iconClass || 'debug-viz-icon',
|
|
481
470
|
undefined,
|
|
482
471
|
this.useVisualizer(v, originalExpression, cts.token)
|
|
483
|
-
))));
|
|
472
|
+
))))));
|
|
484
473
|
if (actions.length === 0) ;
|
|
485
474
|
else if (actions.length === 1) {
|
|
486
475
|
actionBar.push(actions[0], { icon: true, label: false });
|
|
487
476
|
}
|
|
488
477
|
else {
|
|
489
|
-
actionBar.push(( new Action('debugViz', ( localizeWithPath(
|
|
490
|
-
'vs/workbench/contrib/debug/browser/variablesView',
|
|
491
|
-
'useVisualizer',
|
|
492
|
-
'Visualize Variable...'
|
|
493
|
-
)), ThemeIcon.asClassName(Codicon.eye), undefined, () => this.pickVisualizer(actions, originalExpression, data))), { icon: true, label: false });
|
|
478
|
+
actionBar.push(( (new Action('debugViz', ( localizeWithPath(_moduleId, 2, 'Visualize Variable...')), ThemeIcon.asClassName(Codicon.eye), undefined, () => this.pickVisualizer(actions, originalExpression, data)))), { icon: true, label: false });
|
|
494
479
|
}
|
|
495
480
|
});
|
|
496
481
|
}
|
|
@@ -518,39 +503,24 @@ let VariablesRenderer = class VariablesRenderer extends AbstractExpressionsRende
|
|
|
518
503
|
};
|
|
519
504
|
}
|
|
520
505
|
};
|
|
521
|
-
VariablesRenderer = VariablesRenderer_1 = ( __decorate([
|
|
522
|
-
( __param(1, IMenuService)),
|
|
523
|
-
( __param(2, IContextKeyService)),
|
|
524
|
-
( __param(3, IDebugVisualizerService)),
|
|
525
|
-
( __param(4, IContextMenuService)),
|
|
526
|
-
( __param(5, IDebugService)),
|
|
527
|
-
( __param(6, IContextViewService))
|
|
528
|
-
], VariablesRenderer));
|
|
506
|
+
VariablesRenderer = VariablesRenderer_1 = ( (__decorate([
|
|
507
|
+
( (__param(1, IMenuService))),
|
|
508
|
+
( (__param(2, IContextKeyService))),
|
|
509
|
+
( (__param(3, IDebugVisualizerService))),
|
|
510
|
+
( (__param(4, IContextMenuService))),
|
|
511
|
+
( (__param(5, IDebugService))),
|
|
512
|
+
( (__param(6, IContextViewService)))
|
|
513
|
+
], VariablesRenderer)));
|
|
529
514
|
class VariablesAccessibilityProvider {
|
|
530
515
|
getWidgetAriaLabel() {
|
|
531
|
-
return ( localizeWithPath(
|
|
532
|
-
'vs/workbench/contrib/debug/browser/variablesView',
|
|
533
|
-
'variablesAriaTreeLabel',
|
|
534
|
-
"Debug Variables"
|
|
535
|
-
));
|
|
516
|
+
return ( localizeWithPath(_moduleId, 3, "Debug Variables"));
|
|
536
517
|
}
|
|
537
518
|
getAriaLabel(element) {
|
|
538
519
|
if (element instanceof Scope) {
|
|
539
|
-
return ( localizeWithPath(
|
|
540
|
-
'vs/workbench/contrib/debug/browser/variablesView',
|
|
541
|
-
'variableScopeAriaLabel',
|
|
542
|
-
"Scope {0}",
|
|
543
|
-
element.name
|
|
544
|
-
));
|
|
520
|
+
return ( localizeWithPath(_moduleId, 4, "Scope {0}", element.name));
|
|
545
521
|
}
|
|
546
522
|
if (element instanceof Variable) {
|
|
547
|
-
return ( localizeWithPath(
|
|
548
|
-
'vs/workbench/contrib/debug/browser/variablesView',
|
|
549
|
-
{ key: 'variableAriaLabel', comment: ['Placeholders are variable name and variable value respectivly. They should not be translated.'] },
|
|
550
|
-
"{0}, value {1}",
|
|
551
|
-
element.name,
|
|
552
|
-
element.value
|
|
553
|
-
));
|
|
523
|
+
return ( localizeWithPath(_moduleId, 5, "{0}, value {1}", element.name, element.value));
|
|
554
524
|
}
|
|
555
525
|
return null;
|
|
556
526
|
}
|
|
@@ -585,18 +555,18 @@ CommandsRegistry.registerCommand({
|
|
|
585
555
|
return;
|
|
586
556
|
}
|
|
587
557
|
const evalContext = session.capabilities.supportsClipboardContext ? 'clipboard' : elementContext;
|
|
588
|
-
const toEvaluate = ( elements.map(
|
|
558
|
+
const toEvaluate = ( (elements.map(
|
|
589
559
|
element => element instanceof Variable ? (element.evaluateName || element.value) : element.name
|
|
590
|
-
));
|
|
560
|
+
)));
|
|
591
561
|
try {
|
|
592
|
-
const evaluations = await Promise.all(( toEvaluate.map(expr => session.evaluate(expr, stackFrame.frameId, evalContext))));
|
|
593
|
-
const result = ( coalesce(evaluations).map(evaluation => evaluation.body.result));
|
|
562
|
+
const evaluations = await Promise.all(( (toEvaluate.map(expr => session.evaluate(expr, stackFrame.frameId, evalContext)))));
|
|
563
|
+
const result = ( (coalesce(evaluations).map(evaluation => evaluation.body.result)));
|
|
594
564
|
if (result.length) {
|
|
595
565
|
clipboardService.writeText(result.join('\n'));
|
|
596
566
|
}
|
|
597
567
|
}
|
|
598
568
|
catch (e) {
|
|
599
|
-
const result = ( elements.map(element => element.value));
|
|
569
|
+
const result = ( (elements.map(element => element.value)));
|
|
600
570
|
clipboardService.writeText(result.join('\n'));
|
|
601
571
|
}
|
|
602
572
|
}
|
|
@@ -651,11 +621,7 @@ CommandsRegistry.registerCommand({
|
|
|
651
621
|
async function tryInstallHexEditor(extensionsWorkbenchService, notificationService) {
|
|
652
622
|
try {
|
|
653
623
|
await extensionsWorkbenchService.install(HEX_EDITOR_EXTENSION_ID, {
|
|
654
|
-
justification: ( localizeWithPath(
|
|
655
|
-
'vs/workbench/contrib/debug/browser/variablesView',
|
|
656
|
-
"viewMemory.prompt",
|
|
657
|
-
"Inspecting binary data requires this extension."
|
|
658
|
-
)),
|
|
624
|
+
justification: ( localizeWithPath(_moduleId, 6, "Inspecting binary data requires this extension.")),
|
|
659
625
|
enable: true
|
|
660
626
|
}, 15 );
|
|
661
627
|
return true;
|
|
@@ -716,17 +682,13 @@ registerAction2(class extends ViewAction {
|
|
|
716
682
|
super({
|
|
717
683
|
id: 'variables.collapse',
|
|
718
684
|
viewId: VARIABLES_VIEW_ID,
|
|
719
|
-
title: ( localizeWithPath(
|
|
720
|
-
'vs/workbench/contrib/debug/browser/variablesView',
|
|
721
|
-
'collapse',
|
|
722
|
-
"Collapse All"
|
|
723
|
-
)),
|
|
685
|
+
title: ( localizeWithPath(_moduleId, 7, "Collapse All")),
|
|
724
686
|
f1: false,
|
|
725
687
|
icon: Codicon.collapseAll,
|
|
726
688
|
menu: {
|
|
727
689
|
id: MenuId.ViewTitle,
|
|
728
690
|
group: 'navigation',
|
|
729
|
-
when: ( ContextKeyExpr.equals('view', VARIABLES_VIEW_ID))
|
|
691
|
+
when: ( (ContextKeyExpr.equals('view', VARIABLES_VIEW_ID)))
|
|
730
692
|
}
|
|
731
693
|
});
|
|
732
694
|
}
|
|
@@ -27,6 +27,7 @@ import { IDebugService } from 'vscode/vscode/vs/workbench/contrib/debug/common/d
|
|
|
27
27
|
import { Expression, Variable, VisualizedExpression } from 'vscode/vscode/vs/workbench/contrib/debug/common/debugModel';
|
|
28
28
|
|
|
29
29
|
var WatchExpressionsRenderer_1;
|
|
30
|
+
const _moduleId = "vs/workbench/contrib/debug/browser/watchExpressionsView";
|
|
30
31
|
const MAX_VALUE_RENDER_LENGTH_IN_VIEWLET = 1024;
|
|
31
32
|
let ignoreViewUpdates = false;
|
|
32
33
|
let useCachedEvaluation = false;
|
|
@@ -37,10 +38,10 @@ let WatchExpressionsView = class WatchExpressionsView extends ViewPane {
|
|
|
37
38
|
this.needsRefresh = false;
|
|
38
39
|
this.menu = menuService.createMenu(MenuId.DebugWatchContext, contextKeyService);
|
|
39
40
|
this._register(this.menu);
|
|
40
|
-
this.watchExpressionsUpdatedScheduler = ( new RunOnceScheduler(() => {
|
|
41
|
+
this.watchExpressionsUpdatedScheduler = ( (new RunOnceScheduler(() => {
|
|
41
42
|
this.needsRefresh = false;
|
|
42
43
|
this.tree.updateChildren();
|
|
43
|
-
}, 50));
|
|
44
|
+
}, 50)));
|
|
44
45
|
this.watchExpressionsExist = CONTEXT_WATCH_EXPRESSIONS_EXIST.bindTo(contextKeyService);
|
|
45
46
|
this.variableReadonly = CONTEXT_VARIABLE_IS_READONLY.bindTo(contextKeyService);
|
|
46
47
|
this.watchExpressionsExist.set(this.debugService.getModel().getWatchExpressions().length > 0);
|
|
@@ -53,12 +54,12 @@ let WatchExpressionsView = class WatchExpressionsView extends ViewPane {
|
|
|
53
54
|
const treeContainer = renderViewTree(container);
|
|
54
55
|
const expressionsRenderer = this.instantiationService.createInstance(WatchExpressionsRenderer);
|
|
55
56
|
const linkDetector = this.instantiationService.createInstance(LinkDetector);
|
|
56
|
-
this.tree = this.instantiationService.createInstance(WorkbenchAsyncDataTree, 'WatchExpressions', treeContainer, ( new WatchExpressionsDelegate()), [
|
|
57
|
+
this.tree = this.instantiationService.createInstance(WorkbenchAsyncDataTree, 'WatchExpressions', treeContainer, ( (new WatchExpressionsDelegate())), [
|
|
57
58
|
expressionsRenderer,
|
|
58
59
|
this.instantiationService.createInstance(VariablesRenderer, linkDetector),
|
|
59
60
|
this.instantiationService.createInstance(VisualizedVariableRenderer, linkDetector),
|
|
60
61
|
], this.instantiationService.createInstance(WatchExpressionsDataSource), {
|
|
61
|
-
accessibilityProvider: ( new WatchExpressionsAccessibilityProvider()),
|
|
62
|
+
accessibilityProvider: ( (new WatchExpressionsAccessibilityProvider())),
|
|
62
63
|
identityProvider: { getId: (element) => element.getId() },
|
|
63
64
|
keyboardNavigationLabelProvider: {
|
|
64
65
|
getKeyboardNavigationLabel: (e) => {
|
|
@@ -68,7 +69,7 @@ let WatchExpressionsView = class WatchExpressionsView extends ViewPane {
|
|
|
68
69
|
return e.name;
|
|
69
70
|
}
|
|
70
71
|
},
|
|
71
|
-
dnd: ( new WatchExpressionsDragAndDrop(this.debugService)),
|
|
72
|
+
dnd: ( (new WatchExpressionsDragAndDrop(this.debugService))),
|
|
72
73
|
overrideStyles: {
|
|
73
74
|
listBackground: this.getBackgroundColor()
|
|
74
75
|
}
|
|
@@ -176,19 +177,19 @@ let WatchExpressionsView = class WatchExpressionsView extends ViewPane {
|
|
|
176
177
|
});
|
|
177
178
|
}
|
|
178
179
|
};
|
|
179
|
-
WatchExpressionsView = ( __decorate([
|
|
180
|
-
( __param(1, IContextMenuService)),
|
|
181
|
-
( __param(2, IDebugService)),
|
|
182
|
-
( __param(3, IKeybindingService)),
|
|
183
|
-
( __param(4, IInstantiationService)),
|
|
184
|
-
( __param(5, IViewDescriptorService)),
|
|
185
|
-
( __param(6, IConfigurationService)),
|
|
186
|
-
( __param(7, IContextKeyService)),
|
|
187
|
-
( __param(8, IOpenerService)),
|
|
188
|
-
( __param(9, IThemeService)),
|
|
189
|
-
( __param(10, ITelemetryService)),
|
|
190
|
-
( __param(11, IMenuService))
|
|
191
|
-
], WatchExpressionsView));
|
|
180
|
+
WatchExpressionsView = ( (__decorate([
|
|
181
|
+
( (__param(1, IContextMenuService))),
|
|
182
|
+
( (__param(2, IDebugService))),
|
|
183
|
+
( (__param(3, IKeybindingService))),
|
|
184
|
+
( (__param(4, IInstantiationService))),
|
|
185
|
+
( (__param(5, IViewDescriptorService))),
|
|
186
|
+
( (__param(6, IConfigurationService))),
|
|
187
|
+
( (__param(7, IContextKeyService))),
|
|
188
|
+
( (__param(8, IOpenerService))),
|
|
189
|
+
( (__param(9, IThemeService))),
|
|
190
|
+
( (__param(10, ITelemetryService))),
|
|
191
|
+
( (__param(11, IMenuService)))
|
|
192
|
+
], WatchExpressionsView)));
|
|
192
193
|
class WatchExpressionsDelegate {
|
|
193
194
|
getHeight(_element) {
|
|
194
195
|
return 22;
|
|
@@ -215,9 +216,9 @@ class WatchExpressionsDataSource extends AbstractExpressionDataSource {
|
|
|
215
216
|
const debugService = element;
|
|
216
217
|
const watchExpressions = debugService.getModel().getWatchExpressions();
|
|
217
218
|
const viewModel = debugService.getViewModel();
|
|
218
|
-
return Promise.all(( watchExpressions.map(we => !!we.name && !useCachedEvaluation
|
|
219
|
+
return Promise.all(( (watchExpressions.map(we => !!we.name && !useCachedEvaluation
|
|
219
220
|
? we.evaluate(viewModel.focusedSession, viewModel.focusedStackFrame, 'watch').then(() => we)
|
|
220
|
-
: Promise.resolve(we))));
|
|
221
|
+
: Promise.resolve(we)))));
|
|
221
222
|
}
|
|
222
223
|
return element.getChildren();
|
|
223
224
|
}
|
|
@@ -259,11 +260,7 @@ let WatchExpressionsRenderer = class WatchExpressionsRenderer extends AbstractEx
|
|
|
259
260
|
if (settingValue) {
|
|
260
261
|
return {
|
|
261
262
|
initialValue: expression.value,
|
|
262
|
-
ariaLabel: ( localizeWithPath(
|
|
263
|
-
'vs/workbench/contrib/debug/browser/watchExpressionsView',
|
|
264
|
-
'typeNewValue',
|
|
265
|
-
"Type new value"
|
|
266
|
-
)),
|
|
263
|
+
ariaLabel: ( localizeWithPath(_moduleId, 0, "Type new value")),
|
|
267
264
|
onFinish: async (value, success) => {
|
|
268
265
|
if (success && value) {
|
|
269
266
|
const focusedFrame = this.debugService.getViewModel().focusedStackFrame;
|
|
@@ -277,16 +274,8 @@ let WatchExpressionsRenderer = class WatchExpressionsRenderer extends AbstractEx
|
|
|
277
274
|
}
|
|
278
275
|
return {
|
|
279
276
|
initialValue: expression.name ? expression.name : '',
|
|
280
|
-
ariaLabel: ( localizeWithPath(
|
|
281
|
-
|
|
282
|
-
'watchExpressionInputAriaLabel',
|
|
283
|
-
"Type watch expression"
|
|
284
|
-
)),
|
|
285
|
-
placeholder: ( localizeWithPath(
|
|
286
|
-
'vs/workbench/contrib/debug/browser/watchExpressionsView',
|
|
287
|
-
'watchExpressionPlaceholder',
|
|
288
|
-
"Expression to watch"
|
|
289
|
-
)),
|
|
277
|
+
ariaLabel: ( localizeWithPath(_moduleId, 1, "Type watch expression")),
|
|
278
|
+
placeholder: ( localizeWithPath(_moduleId, 2, "Expression to watch")),
|
|
290
279
|
onFinish: (value, success) => {
|
|
291
280
|
if (success && value) {
|
|
292
281
|
this.debugService.renameWatchExpression(expression.getId(), value);
|
|
@@ -311,12 +300,12 @@ let WatchExpressionsRenderer = class WatchExpressionsRenderer extends AbstractEx
|
|
|
311
300
|
actionBar.push(primary, { icon: true, label: false });
|
|
312
301
|
}
|
|
313
302
|
};
|
|
314
|
-
WatchExpressionsRenderer = WatchExpressionsRenderer_1 = ( __decorate([
|
|
315
|
-
( __param(0, IMenuService)),
|
|
316
|
-
( __param(1, IContextKeyService)),
|
|
317
|
-
( __param(2, IDebugService)),
|
|
318
|
-
( __param(3, IContextViewService))
|
|
319
|
-
], WatchExpressionsRenderer));
|
|
303
|
+
WatchExpressionsRenderer = WatchExpressionsRenderer_1 = ( (__decorate([
|
|
304
|
+
( (__param(0, IMenuService))),
|
|
305
|
+
( (__param(1, IContextKeyService))),
|
|
306
|
+
( (__param(2, IDebugService))),
|
|
307
|
+
( (__param(3, IContextViewService)))
|
|
308
|
+
], WatchExpressionsRenderer)));
|
|
320
309
|
function getContextForWatchExpressionMenu(parentContext, expression) {
|
|
321
310
|
return parentContext.createOverlay([
|
|
322
311
|
[CONTEXT_CAN_VIEW_MEMORY.key, expression.memoryReference !== undefined],
|
|
@@ -325,29 +314,13 @@ function getContextForWatchExpressionMenu(parentContext, expression) {
|
|
|
325
314
|
}
|
|
326
315
|
class WatchExpressionsAccessibilityProvider {
|
|
327
316
|
getWidgetAriaLabel() {
|
|
328
|
-
return ( localizeWithPath(
|
|
329
|
-
'vs/workbench/contrib/debug/browser/watchExpressionsView',
|
|
330
|
-
{ comment: ['Debug is a noun in this context, not a verb.'], key: 'watchAriaTreeLabel' },
|
|
331
|
-
"Debug Watch Expressions"
|
|
332
|
-
));
|
|
317
|
+
return ( localizeWithPath(_moduleId, 3, "Debug Watch Expressions"));
|
|
333
318
|
}
|
|
334
319
|
getAriaLabel(element) {
|
|
335
320
|
if (element instanceof Expression) {
|
|
336
|
-
return ( localizeWithPath(
|
|
337
|
-
'vs/workbench/contrib/debug/browser/watchExpressionsView',
|
|
338
|
-
'watchExpressionAriaLabel',
|
|
339
|
-
"{0}, value {1}",
|
|
340
|
-
element.name,
|
|
341
|
-
element.value
|
|
342
|
-
));
|
|
321
|
+
return ( localizeWithPath(_moduleId, 4, "{0}, value {1}", element.name, element.value));
|
|
343
322
|
}
|
|
344
|
-
return ( localizeWithPath(
|
|
345
|
-
'vs/workbench/contrib/debug/browser/watchExpressionsView',
|
|
346
|
-
'watchVariableAriaLabel',
|
|
347
|
-
"{0}, value {1}",
|
|
348
|
-
element.name,
|
|
349
|
-
element.value
|
|
350
|
-
));
|
|
323
|
+
return ( localizeWithPath(_moduleId, 5, "{0}, value {1}", element.name, element.value));
|
|
351
324
|
}
|
|
352
325
|
}
|
|
353
326
|
class WatchExpressionsDragAndDrop {
|
|
@@ -399,7 +372,7 @@ class WatchExpressionsDragAndDrop {
|
|
|
399
372
|
}
|
|
400
373
|
const draggedElement = data.elements[0];
|
|
401
374
|
if (!(draggedElement instanceof Expression)) {
|
|
402
|
-
throw new Error('Invalid dragged element');
|
|
375
|
+
throw ( (new Error('Invalid dragged element')));
|
|
403
376
|
}
|
|
404
377
|
const watches = this.debugService.getModel().getWatchExpressions();
|
|
405
378
|
const sourcePosition = watches.indexOf(draggedElement);
|
|
@@ -428,11 +401,7 @@ registerAction2(class Collapse extends ViewAction {
|
|
|
428
401
|
super({
|
|
429
402
|
id: 'watch.collapse',
|
|
430
403
|
viewId: WATCH_VIEW_ID,
|
|
431
|
-
title: ( localizeWithPath(
|
|
432
|
-
'vs/workbench/contrib/debug/browser/watchExpressionsView',
|
|
433
|
-
'collapse',
|
|
434
|
-
"Collapse All"
|
|
435
|
-
)),
|
|
404
|
+
title: ( localizeWithPath(_moduleId, 6, "Collapse All")),
|
|
436
405
|
f1: false,
|
|
437
406
|
icon: Codicon.collapseAll,
|
|
438
407
|
precondition: CONTEXT_WATCH_EXPRESSIONS_EXIST,
|
|
@@ -440,7 +409,7 @@ registerAction2(class Collapse extends ViewAction {
|
|
|
440
409
|
id: MenuId.ViewTitle,
|
|
441
410
|
order: 30,
|
|
442
411
|
group: 'navigation',
|
|
443
|
-
when: ( ContextKeyExpr.equals('view', WATCH_VIEW_ID))
|
|
412
|
+
when: ( (ContextKeyExpr.equals('view', WATCH_VIEW_ID)))
|
|
444
413
|
}
|
|
445
414
|
});
|
|
446
415
|
}
|
|
@@ -449,11 +418,7 @@ registerAction2(class Collapse extends ViewAction {
|
|
|
449
418
|
}
|
|
450
419
|
});
|
|
451
420
|
const ADD_WATCH_ID = 'workbench.debug.viewlet.action.addWatchExpression';
|
|
452
|
-
const ADD_WATCH_LABEL = ( localizeWithPath(
|
|
453
|
-
'vs/workbench/contrib/debug/browser/watchExpressionsView',
|
|
454
|
-
'addWatchExpression',
|
|
455
|
-
"Add Expression"
|
|
456
|
-
));
|
|
421
|
+
const ADD_WATCH_LABEL = ( localizeWithPath(_moduleId, 7, "Add Expression"));
|
|
457
422
|
registerAction2(class AddWatchExpressionAction extends Action2 {
|
|
458
423
|
constructor() {
|
|
459
424
|
super({
|
|
@@ -464,7 +429,7 @@ registerAction2(class AddWatchExpressionAction extends Action2 {
|
|
|
464
429
|
menu: {
|
|
465
430
|
id: MenuId.ViewTitle,
|
|
466
431
|
group: 'navigation',
|
|
467
|
-
when: ( ContextKeyExpr.equals('view', WATCH_VIEW_ID))
|
|
432
|
+
when: ( (ContextKeyExpr.equals('view', WATCH_VIEW_ID)))
|
|
468
433
|
}
|
|
469
434
|
});
|
|
470
435
|
}
|
|
@@ -474,11 +439,7 @@ registerAction2(class AddWatchExpressionAction extends Action2 {
|
|
|
474
439
|
}
|
|
475
440
|
});
|
|
476
441
|
const REMOVE_WATCH_EXPRESSIONS_COMMAND_ID = 'workbench.debug.viewlet.action.removeAllWatchExpressions';
|
|
477
|
-
const REMOVE_WATCH_EXPRESSIONS_LABEL = ( localizeWithPath(
|
|
478
|
-
'vs/workbench/contrib/debug/browser/watchExpressionsView',
|
|
479
|
-
'removeAllWatchExpressions',
|
|
480
|
-
"Remove All Expressions"
|
|
481
|
-
));
|
|
442
|
+
const REMOVE_WATCH_EXPRESSIONS_LABEL = ( localizeWithPath(_moduleId, 8, "Remove All Expressions"));
|
|
482
443
|
registerAction2(class RemoveAllWatchExpressionsAction extends Action2 {
|
|
483
444
|
constructor() {
|
|
484
445
|
super({
|
|
@@ -491,7 +452,7 @@ registerAction2(class RemoveAllWatchExpressionsAction extends Action2 {
|
|
|
491
452
|
id: MenuId.ViewTitle,
|
|
492
453
|
order: 20,
|
|
493
454
|
group: 'navigation',
|
|
494
|
-
when: ( ContextKeyExpr.equals('view', WATCH_VIEW_ID))
|
|
455
|
+
when: ( (ContextKeyExpr.equals('view', WATCH_VIEW_ID)))
|
|
495
456
|
}
|
|
496
457
|
});
|
|
497
458
|
}
|