@codingame/monaco-vscode-debug-service-override 1.82.4 → 1.82.5-next.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/debug.d.ts +5 -0
- package/debug.js +24 -0
- package/external/rollup-plugin-styles/dist/runtime/inject-css.js +3 -0
- package/external/tslib/tslib.es6.js +11 -0
- package/index.d.ts +1 -1
- package/index.js +1 -1
- package/override/vs/platform/dialogs/common/dialogs.js +8 -0
- package/package.json +2 -2
- package/vscode/src/vs/editor/common/services/languageFeaturesService.js +44 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +200 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +785 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +399 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +1298 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +178 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackView.js +960 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.js +497 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugANSIHandling.js +347 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +299 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugAdapterManager.js +400 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +827 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConfigurationManager.js +621 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConsoleQuickAccess.js +60 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorActions.js +527 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +681 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +356 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugMemory.js +206 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugProgress.js +82 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugQuickAccess.js +143 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugService.js +1174 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSession.js +1144 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +106 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugStatus.js +68 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTaskRunner.js +275 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugToolBar.js +314 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugViewlet.js +168 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/disassemblyView.js +663 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +105 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +231 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/loadedScriptsView.js +631 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/media/breakpointWidget.css.js +6 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/media/callStackEditorContribution.css.js +6 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/media/debug.contribution.css.js +6 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/media/debugHover.css.js +6 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/media/debugToolBar.css.js +6 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/media/debugViewlet.css.js +6 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/media/exceptionWidget.css.js +6 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/media/repl.css.js +6 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/rawDebugSession.js +695 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +953 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/replFilter.js +48 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +336 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/statusbarColorProvider.js +98 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +575 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/watchExpressionsView.js +415 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/welcomeView.js +102 -0
- package/vscode/src/vs/workbench/contrib/debug/common/breakpoints.js +21 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugCompoundRoot.js +17 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugContentProvider.js +100 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugLifecycle.js +59 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +1482 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugSchemas.js +346 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +123 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugStorage.js +175 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugTelemetry.js +36 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugViewModel.js +117 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugger.js +260 -0
- package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +27 -0
- package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +83 -0
- package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +283 -0
- package/vscode/src/vs/workbench/services/configurationResolver/browser/baseConfigurationResolverService.js +305 -0
- package/vscode/src/vs/workbench/services/configurationResolver/browser/configurationResolverService.js +28 -0
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +176 -0
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +12 -0
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import { distinct } from 'monaco-editor/esm/vs/base/common/arrays.js';
|
|
3
|
+
import { Event } from 'monaco-editor/esm/vs/base/common/event.js';
|
|
4
|
+
import { Disposable } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
|
|
5
|
+
import { Range } from 'monaco-editor/esm/vs/editor/common/core/range.js';
|
|
6
|
+
import { GlyphMarginLane, OverviewRulerLane } from 'monaco-editor/esm/vs/editor/common/model.js';
|
|
7
|
+
import { localize } from 'monaco-editor/esm/vs/nls.js';
|
|
8
|
+
import { ILogService } from 'monaco-editor/esm/vs/platform/log/common/log.js';
|
|
9
|
+
import { registerColor } from 'monaco-editor/esm/vs/platform/theme/common/colorRegistry.js';
|
|
10
|
+
import { themeColorFromId } from 'monaco-editor/esm/vs/platform/theme/common/themeService.js';
|
|
11
|
+
import { ThemeIcon } from 'monaco-editor/esm/vs/base/common/themables.js';
|
|
12
|
+
import { IUriIdentityService } from 'monaco-editor/esm/vs/platform/uriIdentity/common/uriIdentity.js';
|
|
13
|
+
import { debugStackframe, debugStackframeFocused } from 'vscode/vscode/vs/workbench/contrib/debug/browser/debugIcons';
|
|
14
|
+
import { IDebugService } from 'vscode/vscode/vs/workbench/contrib/debug/common/debug';
|
|
15
|
+
import './media/callStackEditorContribution.css.js';
|
|
16
|
+
|
|
17
|
+
const topStackFrameColor = registerColor('editor.stackFrameHighlightBackground', { dark: '#ffff0033', light: '#ffff6673', hcDark: '#ffff0033', hcLight: '#ffff6673' }, ( localize(
|
|
18
|
+
'topStackFrameLineHighlight',
|
|
19
|
+
'Background color for the highlight of line at the top stack frame position.'
|
|
20
|
+
)));
|
|
21
|
+
const focusedStackFrameColor = registerColor('editor.focusedStackFrameHighlightBackground', { dark: '#7abd7a4d', light: '#cee7ce73', hcDark: '#7abd7a4d', hcLight: '#cee7ce73' }, ( localize(
|
|
22
|
+
'focusedStackFrameLineHighlight',
|
|
23
|
+
'Background color for the highlight of line at focused stack frame position.'
|
|
24
|
+
)));
|
|
25
|
+
const stickiness = 1 ;
|
|
26
|
+
const TOP_STACK_FRAME_MARGIN = {
|
|
27
|
+
description: 'top-stack-frame-margin',
|
|
28
|
+
glyphMarginClassName: ThemeIcon.asClassName(debugStackframe),
|
|
29
|
+
glyphMargin: { position: GlyphMarginLane.Right },
|
|
30
|
+
zIndex: 9999,
|
|
31
|
+
stickiness,
|
|
32
|
+
overviewRuler: {
|
|
33
|
+
position: OverviewRulerLane.Full,
|
|
34
|
+
color: themeColorFromId(topStackFrameColor)
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
const FOCUSED_STACK_FRAME_MARGIN = {
|
|
38
|
+
description: 'focused-stack-frame-margin',
|
|
39
|
+
glyphMarginClassName: ThemeIcon.asClassName(debugStackframeFocused),
|
|
40
|
+
glyphMargin: { position: GlyphMarginLane.Right },
|
|
41
|
+
zIndex: 9999,
|
|
42
|
+
stickiness,
|
|
43
|
+
overviewRuler: {
|
|
44
|
+
position: OverviewRulerLane.Full,
|
|
45
|
+
color: themeColorFromId(focusedStackFrameColor)
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
const TOP_STACK_FRAME_DECORATION = {
|
|
49
|
+
description: 'top-stack-frame-decoration',
|
|
50
|
+
isWholeLine: true,
|
|
51
|
+
className: 'debug-top-stack-frame-line',
|
|
52
|
+
stickiness
|
|
53
|
+
};
|
|
54
|
+
const FOCUSED_STACK_FRAME_DECORATION = {
|
|
55
|
+
description: 'focused-stack-frame-decoration',
|
|
56
|
+
isWholeLine: true,
|
|
57
|
+
className: 'debug-focused-stack-frame-line',
|
|
58
|
+
stickiness
|
|
59
|
+
};
|
|
60
|
+
function createDecorationsForStackFrame(stackFrame, isFocusedSession, noCharactersBefore) {
|
|
61
|
+
const result = [];
|
|
62
|
+
const columnUntilEOLRange = ( new Range(
|
|
63
|
+
stackFrame.range.startLineNumber,
|
|
64
|
+
stackFrame.range.startColumn,
|
|
65
|
+
stackFrame.range.startLineNumber,
|
|
66
|
+
1073741824
|
|
67
|
+
));
|
|
68
|
+
const range = ( new Range(
|
|
69
|
+
stackFrame.range.startLineNumber,
|
|
70
|
+
stackFrame.range.startColumn,
|
|
71
|
+
stackFrame.range.startLineNumber,
|
|
72
|
+
stackFrame.range.startColumn + 1
|
|
73
|
+
));
|
|
74
|
+
const topStackFrame = stackFrame.thread.getTopStackFrame();
|
|
75
|
+
if (stackFrame.getId() === topStackFrame?.getId()) {
|
|
76
|
+
if (isFocusedSession) {
|
|
77
|
+
result.push({
|
|
78
|
+
options: TOP_STACK_FRAME_MARGIN,
|
|
79
|
+
range
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
result.push({
|
|
83
|
+
options: TOP_STACK_FRAME_DECORATION,
|
|
84
|
+
range: columnUntilEOLRange
|
|
85
|
+
});
|
|
86
|
+
if (stackFrame.range.startColumn > 1) {
|
|
87
|
+
result.push({
|
|
88
|
+
options: {
|
|
89
|
+
description: 'top-stack-frame-inline-decoration',
|
|
90
|
+
before: {
|
|
91
|
+
content: '\uEB8B',
|
|
92
|
+
inlineClassName: noCharactersBefore ? 'debug-top-stack-frame-column start-of-line' : 'debug-top-stack-frame-column',
|
|
93
|
+
inlineClassNameAffectsLetterSpacing: true
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
range: columnUntilEOLRange
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
if (isFocusedSession) {
|
|
102
|
+
result.push({
|
|
103
|
+
options: FOCUSED_STACK_FRAME_MARGIN,
|
|
104
|
+
range
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
result.push({
|
|
108
|
+
options: FOCUSED_STACK_FRAME_DECORATION,
|
|
109
|
+
range: columnUntilEOLRange
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
return result;
|
|
113
|
+
}
|
|
114
|
+
let CallStackEditorContribution = class CallStackEditorContribution extends Disposable {
|
|
115
|
+
constructor(editor, debugService, uriIdentityService, logService) {
|
|
116
|
+
super();
|
|
117
|
+
this.editor = editor;
|
|
118
|
+
this.debugService = debugService;
|
|
119
|
+
this.uriIdentityService = uriIdentityService;
|
|
120
|
+
this.logService = logService;
|
|
121
|
+
this.decorations = this.editor.createDecorationsCollection();
|
|
122
|
+
const setDecorations = () => this.decorations.set(this.createCallStackDecorations());
|
|
123
|
+
this._register(Event.any(this.debugService.getViewModel().onDidFocusStackFrame, this.debugService.getModel().onDidChangeCallStack)(() => {
|
|
124
|
+
setDecorations();
|
|
125
|
+
}));
|
|
126
|
+
this._register(this.editor.onDidChangeModel(e => {
|
|
127
|
+
if (e.newModelUrl) {
|
|
128
|
+
setDecorations();
|
|
129
|
+
}
|
|
130
|
+
}));
|
|
131
|
+
setDecorations();
|
|
132
|
+
}
|
|
133
|
+
createCallStackDecorations() {
|
|
134
|
+
const editor = this.editor;
|
|
135
|
+
if (!editor.hasModel()) {
|
|
136
|
+
return [];
|
|
137
|
+
}
|
|
138
|
+
const focusedStackFrame = this.debugService.getViewModel().focusedStackFrame;
|
|
139
|
+
const decorations = [];
|
|
140
|
+
this.debugService.getModel().getSessions().forEach(s => {
|
|
141
|
+
const isSessionFocused = s === focusedStackFrame?.thread.session;
|
|
142
|
+
s.getAllThreads().forEach(t => {
|
|
143
|
+
if (t.stopped) {
|
|
144
|
+
const callStack = t.getCallStack();
|
|
145
|
+
const stackFrames = [];
|
|
146
|
+
if (callStack.length > 0) {
|
|
147
|
+
if (focusedStackFrame && !focusedStackFrame.equals(callStack[0])) {
|
|
148
|
+
stackFrames.push(focusedStackFrame);
|
|
149
|
+
}
|
|
150
|
+
stackFrames.push(callStack[0]);
|
|
151
|
+
}
|
|
152
|
+
stackFrames.forEach(candidateStackFrame => {
|
|
153
|
+
if (candidateStackFrame && this.uriIdentityService.extUri.isEqual(candidateStackFrame.source.uri, editor.getModel()?.uri)) {
|
|
154
|
+
if (candidateStackFrame.range.startLineNumber > editor.getModel()?.getLineCount() || candidateStackFrame.range.startLineNumber < 1) {
|
|
155
|
+
this.logService.warn(`CallStackEditorContribution: invalid stack frame line number: ${candidateStackFrame.range.startLineNumber}`);
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
const noCharactersBefore = editor.getModel().getLineFirstNonWhitespaceColumn(candidateStackFrame.range.startLineNumber) >= candidateStackFrame.range.startColumn;
|
|
159
|
+
decorations.push(...createDecorationsForStackFrame(candidateStackFrame, isSessionFocused, noCharactersBefore));
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
});
|
|
165
|
+
return distinct(decorations, d => `${d.options.className} ${d.options.glyphMarginClassName} ${d.range.startLineNumber} ${d.range.startColumn}`);
|
|
166
|
+
}
|
|
167
|
+
dispose() {
|
|
168
|
+
super.dispose();
|
|
169
|
+
this.decorations.clear();
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
CallStackEditorContribution = ( __decorate([
|
|
173
|
+
( __param(1, IDebugService)),
|
|
174
|
+
( __param(2, IUriIdentityService)),
|
|
175
|
+
( __param(3, ILogService))
|
|
176
|
+
], CallStackEditorContribution));
|
|
177
|
+
|
|
178
|
+
export { CallStackEditorContribution, createDecorationsForStackFrame, focusedStackFrameColor, topStackFrameColor };
|