@codingame/monaco-vscode-debug-service-override 9.0.3 → 10.0.1
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/package.json +2 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +160 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackView.js +22 -22
- package/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.js +133 -136
- package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +12 -17
- package/vscode/src/vs/workbench/contrib/debug/browser/debugAdapterManager.js +12 -13
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConfigurationManager.js +23 -26
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConsoleQuickAccess.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorActions.js +35 -36
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +21 -28
- package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +29 -42
- package/vscode/src/vs/workbench/contrib/debug/browser/debugMemory.js +10 -10
- package/vscode/src/vs/workbench/contrib/debug/browser/debugProgress.js +1 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/debugQuickAccess.js +11 -12
- package/vscode/src/vs/workbench/contrib/debug/browser/debugService.js +55 -67
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSession.js +58 -58
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSettingMigration.js +3 -6
- package/vscode/src/vs/workbench/contrib/debug/browser/debugStatus.js +5 -7
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTaskRunner.js +35 -42
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTitle.js +1 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/debugToolBar.js +17 -21
- package/vscode/src/vs/workbench/contrib/debug/browser/debugViewlet.js +8 -8
- package/vscode/src/vs/workbench/contrib/debug/browser/disassemblyView.js +13 -15
- package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +8 -9
- package/vscode/src/vs/workbench/contrib/debug/browser/extensionHostDebugService.js +3 -5
- package/vscode/src/vs/workbench/contrib/debug/browser/loadedScriptsView.js +12 -13
- package/vscode/src/vs/workbench/contrib/debug/browser/media/debug.contribution.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/rawDebugSession.js +5 -5
- package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +66 -71
- package/vscode/src/vs/workbench/contrib/debug/browser/replAccessibilityHelp.js +12 -14
- package/vscode/src/vs/workbench/contrib/debug/browser/replAccessibleView.js +4 -6
- package/vscode/src/vs/workbench/contrib/debug/browser/replFilter.js +2 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +40 -45
- package/vscode/src/vs/workbench/contrib/debug/browser/runAndDebugAccessibilityHelp.js +20 -22
- package/vscode/src/vs/workbench/contrib/debug/browser/statusbarColorProvider.js +5 -6
- package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +39 -48
- package/vscode/src/vs/workbench/contrib/debug/browser/watchExpressionsView.js +34 -35
- package/vscode/src/vs/workbench/contrib/debug/browser/welcomeView.js +9 -10
- package/vscode/src/vs/workbench/contrib/debug/common/debugContentProvider.js +3 -3
- package/vscode/src/vs/workbench/contrib/debug/common/debugLifecycle.js +3 -3
- package/vscode/src/vs/workbench/contrib/debug/common/debugSchemas.js +44 -44
- package/vscode/src/vs/workbench/contrib/debug/common/debugStorage.js +24 -24
- package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.js +5 -4
- package/vscode/src/vs/workbench/contrib/debug/common/debugger.js +11 -11
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariableCommands.js +2 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/debugANSIHandling.js +0 -347
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-debug-service-override",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "10.0.1",
|
|
4
4
|
"keywords": [],
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "CodinGame",
|
|
@@ -26,6 +26,6 @@
|
|
|
26
26
|
}
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"vscode": "npm:@codingame/monaco-vscode-api@
|
|
29
|
+
"vscode": "npm:@codingame/monaco-vscode-api@10.0.1"
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { __decorate, __param } from 'vscode/external/tslib/tslib.es6.js';
|
|
2
|
+
import { $ as $$1, append, addDisposableListener, EventType, clearNode, addStandardDisposableListener } from 'vscode/vscode/vs/base/browser/dom';
|
|
3
|
+
import { ActionBar } from 'vscode/vscode/vs/base/browser/ui/actionbar/actionbar';
|
|
4
|
+
import { HighlightedLabel } from 'vscode/vscode/vs/base/browser/ui/highlightedlabel/highlightedLabel';
|
|
5
|
+
import { getDefaultHoverDelegate } from 'vscode/vscode/vs/base/browser/ui/hover/hoverDelegateFactory';
|
|
6
|
+
import { InputBox } from 'vscode/vscode/vs/base/browser/ui/inputbox/inputBox';
|
|
7
|
+
import { Codicon } from 'vscode/vscode/vs/base/common/codicons';
|
|
8
|
+
import { createMatches } from 'vscode/vscode/vs/base/common/filters';
|
|
9
|
+
import { createSingleCallFunction } from 'vscode/vscode/vs/base/common/functional';
|
|
10
|
+
import { DisposableStore, dispose, toDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
|
|
11
|
+
import { ThemeIcon } from 'vscode/vscode/vs/base/common/themables';
|
|
12
|
+
import { localize } from 'vscode/vscode/vs/nls';
|
|
13
|
+
import { IContextViewService } from 'vscode/vscode/vs/platform/contextview/browser/contextView.service';
|
|
14
|
+
import { IHoverService } from 'vscode/vscode/vs/platform/hover/browser/hover.service';
|
|
15
|
+
import { defaultInputBoxStyles } from 'vscode/vscode/vs/platform/theme/browser/defaultStyles';
|
|
16
|
+
import { IDebugService } from 'vscode/vscode/vs/workbench/contrib/debug/common/debug.service';
|
|
17
|
+
import { Variable } from 'vscode/vscode/vs/workbench/contrib/debug/common/debugModel';
|
|
18
|
+
import { IDebugVisualizerService } from 'vscode/vscode/vs/workbench/contrib/debug/common/debugVisualizers.service';
|
|
19
|
+
|
|
20
|
+
const $ = $$1;
|
|
21
|
+
function renderViewTree(container) {
|
|
22
|
+
const treeContainer = $('.');
|
|
23
|
+
treeContainer.classList.add('debug-view-content');
|
|
24
|
+
container.appendChild(treeContainer);
|
|
25
|
+
return treeContainer;
|
|
26
|
+
}
|
|
27
|
+
let AbstractExpressionDataSource = class AbstractExpressionDataSource {
|
|
28
|
+
constructor(debugService, debugVisualizer) {
|
|
29
|
+
this.debugService = debugService;
|
|
30
|
+
this.debugVisualizer = debugVisualizer;
|
|
31
|
+
}
|
|
32
|
+
async getChildren(element) {
|
|
33
|
+
const vm = this.debugService.getViewModel();
|
|
34
|
+
const children = await this.doGetChildren(element);
|
|
35
|
+
return Promise.all(( (children.map(async (r) => {
|
|
36
|
+
const vizOrTree = vm.getVisualizedExpression(r);
|
|
37
|
+
if (typeof vizOrTree === 'string') {
|
|
38
|
+
const viz = await this.debugVisualizer.getVisualizedNodeFor(vizOrTree, r);
|
|
39
|
+
if (viz) {
|
|
40
|
+
vm.setVisualizedExpression(r, viz);
|
|
41
|
+
return viz;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
else if (vizOrTree) {
|
|
45
|
+
return vizOrTree;
|
|
46
|
+
}
|
|
47
|
+
return r;
|
|
48
|
+
}))));
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
AbstractExpressionDataSource = ( (__decorate([
|
|
52
|
+
( (__param(0, IDebugService))),
|
|
53
|
+
( (__param(1, IDebugVisualizerService)))
|
|
54
|
+
], AbstractExpressionDataSource)));
|
|
55
|
+
let AbstractExpressionsRenderer = class AbstractExpressionsRenderer {
|
|
56
|
+
constructor(debugService, contextViewService, hoverService) {
|
|
57
|
+
this.debugService = debugService;
|
|
58
|
+
this.contextViewService = contextViewService;
|
|
59
|
+
this.hoverService = hoverService;
|
|
60
|
+
}
|
|
61
|
+
renderTemplate(container) {
|
|
62
|
+
const templateDisposable = ( (new DisposableStore()));
|
|
63
|
+
const expression = append(container, $('.expression'));
|
|
64
|
+
const name = append(expression, $('span.name'));
|
|
65
|
+
const lazyButton = append(expression, $('span.lazy-button'));
|
|
66
|
+
lazyButton.classList.add(...ThemeIcon.asClassNameArray(Codicon.eye));
|
|
67
|
+
templateDisposable.add(this.hoverService.setupManagedHover(getDefaultHoverDelegate('mouse'), lazyButton, ( localize(10372, "Click to expand"))));
|
|
68
|
+
const type = append(expression, $('span.type'));
|
|
69
|
+
const value = append(expression, $('span.value'));
|
|
70
|
+
const label = templateDisposable.add(( (new HighlightedLabel(name))));
|
|
71
|
+
const inputBoxContainer = append(expression, $('.inputBoxContainer'));
|
|
72
|
+
let actionBar;
|
|
73
|
+
if (this.renderActionBar) {
|
|
74
|
+
append(expression, $('.span.actionbar-spacer'));
|
|
75
|
+
actionBar = templateDisposable.add(( (new ActionBar(expression))));
|
|
76
|
+
}
|
|
77
|
+
const template = { expression, name, type, value, label, inputBoxContainer, actionBar, elementDisposable: ( (new DisposableStore())), templateDisposable, lazyButton, currentElement: undefined };
|
|
78
|
+
templateDisposable.add(addDisposableListener(lazyButton, EventType.CLICK, () => {
|
|
79
|
+
if (template.currentElement) {
|
|
80
|
+
this.debugService.getViewModel().evaluateLazyExpression(template.currentElement);
|
|
81
|
+
}
|
|
82
|
+
}));
|
|
83
|
+
return template;
|
|
84
|
+
}
|
|
85
|
+
renderExpressionElement(element, node, data) {
|
|
86
|
+
data.currentElement = element;
|
|
87
|
+
this.renderExpression(node.element, data, createMatches(node.filterData));
|
|
88
|
+
if (data.actionBar) {
|
|
89
|
+
this.renderActionBar(data.actionBar, element, data);
|
|
90
|
+
}
|
|
91
|
+
const selectedExpression = this.debugService.getViewModel().getSelectedExpression();
|
|
92
|
+
if (element === selectedExpression?.expression || (element instanceof Variable && element.errorMessage)) {
|
|
93
|
+
const options = this.getInputBoxOptions(element, !!selectedExpression?.settingWatch);
|
|
94
|
+
if (options) {
|
|
95
|
+
data.elementDisposable.add(this.renderInputBox(data.name, data.value, data.inputBoxContainer, options));
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
renderInputBox(nameElement, valueElement, inputBoxContainer, options) {
|
|
100
|
+
nameElement.style.display = 'none';
|
|
101
|
+
valueElement.style.display = 'none';
|
|
102
|
+
inputBoxContainer.style.display = 'initial';
|
|
103
|
+
clearNode(inputBoxContainer);
|
|
104
|
+
const inputBox = ( (new InputBox(
|
|
105
|
+
inputBoxContainer,
|
|
106
|
+
this.contextViewService,
|
|
107
|
+
{ ...options, inputBoxStyles: defaultInputBoxStyles }
|
|
108
|
+
)));
|
|
109
|
+
inputBox.value = options.initialValue;
|
|
110
|
+
inputBox.focus();
|
|
111
|
+
inputBox.select();
|
|
112
|
+
const done = createSingleCallFunction((success, finishEditing) => {
|
|
113
|
+
nameElement.style.display = '';
|
|
114
|
+
valueElement.style.display = '';
|
|
115
|
+
inputBoxContainer.style.display = 'none';
|
|
116
|
+
const value = inputBox.value;
|
|
117
|
+
dispose(toDispose);
|
|
118
|
+
if (finishEditing) {
|
|
119
|
+
this.debugService.getViewModel().setSelectedExpression(undefined, false);
|
|
120
|
+
options.onFinish(value, success);
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
const toDispose = [
|
|
124
|
+
inputBox,
|
|
125
|
+
addStandardDisposableListener(inputBox.inputElement, EventType.KEY_DOWN, (e) => {
|
|
126
|
+
const isEscape = e.equals(9 );
|
|
127
|
+
const isEnter = e.equals(3 );
|
|
128
|
+
if (isEscape || isEnter) {
|
|
129
|
+
e.preventDefault();
|
|
130
|
+
e.stopPropagation();
|
|
131
|
+
done(isEnter, true);
|
|
132
|
+
}
|
|
133
|
+
}),
|
|
134
|
+
addDisposableListener(inputBox.inputElement, EventType.BLUR, () => {
|
|
135
|
+
done(true, true);
|
|
136
|
+
}),
|
|
137
|
+
addDisposableListener(inputBox.inputElement, EventType.CLICK, e => {
|
|
138
|
+
e.preventDefault();
|
|
139
|
+
e.stopPropagation();
|
|
140
|
+
})
|
|
141
|
+
];
|
|
142
|
+
return toDisposable(() => {
|
|
143
|
+
done(false, false);
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
disposeElement(node, index, templateData) {
|
|
147
|
+
templateData.elementDisposable.clear();
|
|
148
|
+
}
|
|
149
|
+
disposeTemplate(templateData) {
|
|
150
|
+
templateData.elementDisposable.dispose();
|
|
151
|
+
templateData.templateDisposable.dispose();
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
AbstractExpressionsRenderer = ( (__decorate([
|
|
155
|
+
( (__param(0, IDebugService))),
|
|
156
|
+
( (__param(1, IContextViewService))),
|
|
157
|
+
( (__param(2, IHoverService)))
|
|
158
|
+
], AbstractExpressionsRenderer)));
|
|
159
|
+
|
|
160
|
+
export { AbstractExpressionDataSource, AbstractExpressionsRenderer, renderViewTree };
|
|
@@ -40,11 +40,11 @@ import { IThemeService } from 'vscode/vscode/vs/platform/theme/common/themeServi
|
|
|
40
40
|
import { ThemeIcon } from 'vscode/vscode/vs/base/common/themables';
|
|
41
41
|
import { ViewPane, ViewAction } from 'vscode/vscode/vs/workbench/browser/parts/views/viewPane';
|
|
42
42
|
import { IViewDescriptorService } from 'vscode/vscode/vs/workbench/common/views.service';
|
|
43
|
-
import { renderViewTree } from '
|
|
43
|
+
import { renderViewTree } from './baseDebugView.js';
|
|
44
44
|
import { STOP_ID, DISCONNECT_ID, PAUSE_ID, PAUSE_LABEL, CONTINUE_ID, CONTINUE_LABEL, STEP_OVER_ID, STEP_OVER_LABEL, STEP_INTO_ID, STEP_INTO_LABEL, STEP_OUT_ID, STEP_OUT_LABEL, RESTART_SESSION_ID, RESTART_LABEL, STOP_LABEL, DISCONNECT_LABEL } from 'vscode/vscode/vs/workbench/contrib/debug/browser/debugCommands';
|
|
45
45
|
import { callstackViewSession, debugRestartFrame, debugPause, debugContinue, debugStepOver, debugStepInto, debugStepOut, debugRestart, debugStop, debugDisconnect } from 'vscode/vscode/vs/workbench/contrib/debug/browser/debugIcons';
|
|
46
46
|
import { createDisconnectMenuItemAction } from './debugToolBar.js';
|
|
47
|
-
import {
|
|
47
|
+
import { CONTEXT_CALLSTACK_ITEM_TYPE, CONTEXT_CALLSTACK_SESSION_IS_ATTACH, CONTEXT_CALLSTACK_ITEM_STOPPED, CONTEXT_CALLSTACK_SESSION_HAS_ONE_THREAD, CONTEXT_STACK_FRAME_SUPPORTS_RESTART, isFrameDeemphasized, CALLSTACK_VIEW_ID, CONTEXT_DEBUG_STATE, getStateLabel, CONTEXT_FOCUSED_SESSION_IS_NO_DEBUG } from 'vscode/vscode/vs/workbench/contrib/debug/common/debug';
|
|
48
48
|
import { IDebugService } from 'vscode/vscode/vs/workbench/contrib/debug/common/debug.service';
|
|
49
49
|
import { StackFrame, Thread, ThreadAndSessionIds } from 'vscode/vscode/vs/workbench/contrib/debug/common/debugModel';
|
|
50
50
|
import { isSessionAttach } from 'vscode/vscode/vs/workbench/contrib/debug/common/debugUtils';
|
|
@@ -146,8 +146,8 @@ let CallStackView = class CallStackView extends ViewPane {
|
|
|
146
146
|
this.stateMessageLabel.classList.toggle('exception', stoppedDetails.reason === 'exception');
|
|
147
147
|
this.stateMessage.hidden = false;
|
|
148
148
|
}
|
|
149
|
-
else if (sessions.length === 1 && sessions[0].state ===
|
|
150
|
-
this.stateMessageLabel.textContent = ( localize(
|
|
149
|
+
else if (sessions.length === 1 && sessions[0].state === 3 ) {
|
|
150
|
+
this.stateMessageLabel.textContent = ( localize(5951, "Running"));
|
|
151
151
|
this.stateMessageLabelHover.update(sessions[0].getLabel());
|
|
152
152
|
this.stateMessageLabel.classList.remove('exception');
|
|
153
153
|
this.stateMessage.hidden = false;
|
|
@@ -228,7 +228,7 @@ let CallStackView = class CallStackView extends ViewPane {
|
|
|
228
228
|
if (e instanceof ThreadAndSessionIds) {
|
|
229
229
|
return LoadMoreRenderer.LABEL;
|
|
230
230
|
}
|
|
231
|
-
return ( localize(
|
|
231
|
+
return ( localize(5952, "Show More Stack Frames"));
|
|
232
232
|
},
|
|
233
233
|
getCompressedNodeKeyboardNavigationLabel: (e) => {
|
|
234
234
|
const firstItem = e[0];
|
|
@@ -312,7 +312,7 @@ let CallStackView = class CallStackView extends ViewPane {
|
|
|
312
312
|
await this.updateTreeSelection();
|
|
313
313
|
}));
|
|
314
314
|
this._register(this.tree.onContextMenu(e => this.onContextMenu(e)));
|
|
315
|
-
if (this.debugService.state ===
|
|
315
|
+
if (this.debugService.state === 2 ) {
|
|
316
316
|
this.onCallStackChangeScheduler.schedule(0);
|
|
317
317
|
}
|
|
318
318
|
this._register(this.onDidChangeBodyVisibility(visible => {
|
|
@@ -433,7 +433,7 @@ function getSessionContextOverlay(session) {
|
|
|
433
433
|
return [
|
|
434
434
|
[CONTEXT_CALLSTACK_ITEM_TYPE.key, 'session'],
|
|
435
435
|
[CONTEXT_CALLSTACK_SESSION_IS_ATTACH.key, isSessionAttach(session)],
|
|
436
|
-
[CONTEXT_CALLSTACK_ITEM_STOPPED.key, session.state ===
|
|
436
|
+
[CONTEXT_CALLSTACK_ITEM_STOPPED.key, session.state === 2 ],
|
|
437
437
|
[CONTEXT_CALLSTACK_SESSION_HAS_ONE_THREAD.key, session.getAllThreads().length === 1],
|
|
438
438
|
];
|
|
439
439
|
}
|
|
@@ -487,7 +487,7 @@ let SessionsRenderer = class SessionsRenderer {
|
|
|
487
487
|
this.doRenderElement(lastElement, matches, templateData);
|
|
488
488
|
}
|
|
489
489
|
doRenderElement(session, matches, data) {
|
|
490
|
-
const sessionHover = data.elementDisposable.add(this.hoverService.setupManagedHover(getDefaultHoverDelegate('mouse'), data.session, ( localize(
|
|
490
|
+
const sessionHover = data.elementDisposable.add(this.hoverService.setupManagedHover(getDefaultHoverDelegate('mouse'), data.session, ( localize(5953, "Session"))));
|
|
491
491
|
data.label.set(session.getLabel(), matches);
|
|
492
492
|
const stoppedDetails = session.getStoppedDetails();
|
|
493
493
|
const thread = session.getAllThreads().find(t => t.stopped);
|
|
@@ -516,7 +516,7 @@ let SessionsRenderer = class SessionsRenderer {
|
|
|
516
516
|
data.stateLabel.classList.toggle('exception', thread.stoppedDetails.reason === 'exception');
|
|
517
517
|
}
|
|
518
518
|
else {
|
|
519
|
-
data.stateLabel.textContent = ( localize(
|
|
519
|
+
data.stateLabel.textContent = ( localize(5951, "Running"));
|
|
520
520
|
data.stateLabel.classList.remove('exception');
|
|
521
521
|
}
|
|
522
522
|
}
|
|
@@ -652,7 +652,7 @@ let StackFramesRenderer = class StackFramesRenderer {
|
|
|
652
652
|
}
|
|
653
653
|
data.actionBar.clear();
|
|
654
654
|
if (hasActions) {
|
|
655
|
-
const action = ( (new Action('debug.callStack.restartFrame', ( localize(
|
|
655
|
+
const action = ( (new Action('debug.callStack.restartFrame', ( localize(5954, "Restart Frame")), ThemeIcon.asClassName(debugRestartFrame), true, async () => {
|
|
656
656
|
try {
|
|
657
657
|
await stackFrame.restart();
|
|
658
658
|
}
|
|
@@ -704,7 +704,7 @@ ErrorsRenderer = ErrorsRenderer_1 = ( (__decorate([
|
|
|
704
704
|
], ErrorsRenderer)));
|
|
705
705
|
class LoadMoreRenderer {
|
|
706
706
|
static { this.ID = 'loadMore'; }
|
|
707
|
-
static { this.LABEL = ( localize(
|
|
707
|
+
static { this.LABEL = ( localize(5955, "Load More Stack Frames")); }
|
|
708
708
|
constructor() { }
|
|
709
709
|
get templateId() {
|
|
710
710
|
return LoadMoreRenderer.ID;
|
|
@@ -738,14 +738,14 @@ class ShowMoreRenderer {
|
|
|
738
738
|
const stackFrames = element.element;
|
|
739
739
|
if (stackFrames.every(sf => !!(sf.source && sf.source.origin && sf.source.origin === stackFrames[0].source.origin))) {
|
|
740
740
|
data.label.textContent = ( localize(
|
|
741
|
-
|
|
741
|
+
5956,
|
|
742
742
|
"Show {0} More: {1}",
|
|
743
743
|
stackFrames.length,
|
|
744
744
|
stackFrames[0].source.origin
|
|
745
745
|
));
|
|
746
746
|
}
|
|
747
747
|
else {
|
|
748
|
-
data.label.textContent = ( localize(
|
|
748
|
+
data.label.textContent = ( localize(5957, "Show {0} More Stack Frames", stackFrames.length));
|
|
749
749
|
}
|
|
750
750
|
}
|
|
751
751
|
renderCompressedElements(node, index, templateData, height) {
|
|
@@ -788,7 +788,7 @@ function stoppedText(stoppedDetails) {
|
|
|
788
788
|
}
|
|
789
789
|
function stoppedDescription(stoppedDetails) {
|
|
790
790
|
return stoppedDetails.description ||
|
|
791
|
-
(stoppedDetails.reason ? ( localize(
|
|
791
|
+
(stoppedDetails.reason ? ( localize(5958, "Paused on {0}", stoppedDetails.reason)) : ( localize(5959, "Paused")));
|
|
792
792
|
}
|
|
793
793
|
function isDebugModel(obj) {
|
|
794
794
|
return typeof obj.getSessions === 'function';
|
|
@@ -878,7 +878,7 @@ class CallStackDataSource {
|
|
|
878
878
|
}
|
|
879
879
|
class CallStackAccessibilityProvider {
|
|
880
880
|
getWidgetAriaLabel() {
|
|
881
|
-
return ( localize(
|
|
881
|
+
return ( localize(5960, "Debug Call Stack"));
|
|
882
882
|
}
|
|
883
883
|
getWidgetRole() {
|
|
884
884
|
return 'treegrid';
|
|
@@ -888,11 +888,11 @@ class CallStackAccessibilityProvider {
|
|
|
888
888
|
}
|
|
889
889
|
getAriaLabel(element) {
|
|
890
890
|
if (element instanceof Thread) {
|
|
891
|
-
return ( localize(
|
|
891
|
+
return ( localize(5961, "Thread {0} {1}", element.name, element.stateLabel));
|
|
892
892
|
}
|
|
893
893
|
if (element instanceof StackFrame) {
|
|
894
894
|
return ( localize(
|
|
895
|
-
|
|
895
|
+
5962,
|
|
896
896
|
"Stack Frame {0}, line {1}, {2}",
|
|
897
897
|
element.name,
|
|
898
898
|
element.range.startLineNumber,
|
|
@@ -901,14 +901,14 @@ class CallStackAccessibilityProvider {
|
|
|
901
901
|
}
|
|
902
902
|
if (isDebugSession(element)) {
|
|
903
903
|
const thread = element.getAllThreads().find(t => t.stopped);
|
|
904
|
-
const state = thread ? thread.stateLabel : ( localize(
|
|
905
|
-
return ( localize(
|
|
904
|
+
const state = thread ? thread.stateLabel : ( localize(5951, "Running"));
|
|
905
|
+
return ( localize(5963, "Session {0} {1}", element.getLabel(), state));
|
|
906
906
|
}
|
|
907
907
|
if (typeof element === 'string') {
|
|
908
908
|
return element;
|
|
909
909
|
}
|
|
910
910
|
if (element instanceof Array) {
|
|
911
|
-
return ( localize(
|
|
911
|
+
return ( localize(5957, "Show {0} More Stack Frames", element.length));
|
|
912
912
|
}
|
|
913
913
|
return LoadMoreRenderer.LABEL;
|
|
914
914
|
}
|
|
@@ -936,10 +936,10 @@ registerAction2(class Collapse extends ViewAction {
|
|
|
936
936
|
super({
|
|
937
937
|
id: 'callStack.collapse',
|
|
938
938
|
viewId: CALLSTACK_VIEW_ID,
|
|
939
|
-
title: ( localize(
|
|
939
|
+
title: ( localize(5964, "Collapse All")),
|
|
940
940
|
f1: false,
|
|
941
941
|
icon: Codicon.collapseAll,
|
|
942
|
-
precondition: ( (CONTEXT_DEBUG_STATE.isEqualTo(getStateLabel(
|
|
942
|
+
precondition: ( (CONTEXT_DEBUG_STATE.isEqualTo(getStateLabel(2 )))),
|
|
943
943
|
menu: {
|
|
944
944
|
id: MenuId.ViewTitle,
|
|
945
945
|
order: 10,
|