@codingame/monaco-vscode-debug-service-override 19.1.4 → 20.0.0
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 +16 -16
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackView.js +16 -16
- package/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.js +114 -111
- package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +6 -6
- package/vscode/src/vs/workbench/contrib/debug/browser/debugAdapterManager.js +12 -12
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConfigurationManager.js +5 -5
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConsoleQuickAccess.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConsoleQuickAccess.js +2 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorActions.js +24 -24
- package/vscode/src/vs/workbench/contrib/debug/browser/debugQuickAccess.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/debugQuickAccess.js +10 -10
- package/vscode/src/vs/workbench/contrib/debug/browser/debugService.js +26 -24
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSession.js +44 -44
- package/vscode/src/vs/workbench/contrib/debug/browser/debugStatus.js +3 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTaskRunner.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTaskRunner.js +17 -17
- package/vscode/src/vs/workbench/contrib/debug/browser/debugToolBar.js +3 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/debugViewlet.js +5 -5
- package/vscode/src/vs/workbench/contrib/debug/browser/disassemblyView.js +7 -7
- package/vscode/src/vs/workbench/contrib/debug/browser/loadedScriptsView.js +8 -8
- package/vscode/src/vs/workbench/contrib/debug/browser/rawDebugSession.js +5 -5
- package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +18 -18
- package/vscode/src/vs/workbench/contrib/debug/browser/replAccessibilityHelp.js +8 -8
- package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +5 -5
- package/vscode/src/vs/workbench/contrib/debug/browser/runAndDebugAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/debug/browser/statusbarColorProvider.js +4 -4
- package/vscode/src/vs/workbench/contrib/debug/browser/watchExpressionsView.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/watchExpressionsView.js +66 -26
- package/vscode/src/vs/workbench/contrib/debug/browser/welcomeView.js +6 -6
- 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/debugger.js +11 -11
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariableCommands.js +2 -2
|
@@ -27,7 +27,7 @@ const STATUS_BAR_DEBUGGING_BACKGROUND = registerColor('statusBar.debuggingBackgr
|
|
|
27
27
|
hcDark: '#BA592C',
|
|
28
28
|
hcLight: '#B5200D'
|
|
29
29
|
}, ( localize(
|
|
30
|
-
|
|
30
|
+
6360,
|
|
31
31
|
"Status bar background color when a program is being debugged. The status bar is shown in the bottom of the window"
|
|
32
32
|
)));
|
|
33
33
|
const STATUS_BAR_DEBUGGING_FOREGROUND = registerColor('statusBar.debuggingForeground', {
|
|
@@ -36,14 +36,14 @@ const STATUS_BAR_DEBUGGING_FOREGROUND = registerColor('statusBar.debuggingForegr
|
|
|
36
36
|
hcDark: STATUS_BAR_FOREGROUND,
|
|
37
37
|
hcLight: '#FFFFFF'
|
|
38
38
|
}, ( localize(
|
|
39
|
-
|
|
39
|
+
6361,
|
|
40
40
|
"Status bar foreground color when a program is being debugged. The status bar is shown in the bottom of the window"
|
|
41
41
|
)));
|
|
42
42
|
const STATUS_BAR_DEBUGGING_BORDER = registerColor('statusBar.debuggingBorder', STATUS_BAR_BORDER, ( localize(
|
|
43
|
-
|
|
43
|
+
6362,
|
|
44
44
|
"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"
|
|
45
45
|
)));
|
|
46
|
-
const COMMAND_CENTER_DEBUGGING_BACKGROUND = registerColor('commandCenter.debuggingBackground', ( transparent(STATUS_BAR_DEBUGGING_BACKGROUND, 0.258)), ( localize(
|
|
46
|
+
const COMMAND_CENTER_DEBUGGING_BACKGROUND = registerColor('commandCenter.debuggingBackground', ( transparent(STATUS_BAR_DEBUGGING_BACKGROUND, 0.258)), ( localize(6363, "Command center background color when a program is being debugged")), true);
|
|
47
47
|
let StatusBarColorProvider = class StatusBarColorProvider {
|
|
48
48
|
set enabled(enabled) {
|
|
49
49
|
if (enabled === !!this.disposable) {
|
|
@@ -21,13 +21,11 @@ import { AbstractExpressionsRenderer, IExpressionTemplateData, IInputBoxOptions
|
|
|
21
21
|
import { DebugExpressionRenderer } from "@codingame/monaco-vscode-88aa9a78-75f5-5aaa-89e9-bbdd580b3b5c-common/vscode/vs/workbench/contrib/debug/browser/debugExpressionRenderer";
|
|
22
22
|
export declare class WatchExpressionsView extends ViewPane implements IDebugViewWithVariables {
|
|
23
23
|
private readonly debugService;
|
|
24
|
+
private readonly menuService;
|
|
24
25
|
private watchExpressionsUpdatedScheduler;
|
|
25
26
|
private needsRefresh;
|
|
26
27
|
private tree;
|
|
27
28
|
private watchExpressionsExist;
|
|
28
|
-
private watchItemType;
|
|
29
|
-
private variableReadonly;
|
|
30
|
-
private menu;
|
|
31
29
|
private expressionRenderer;
|
|
32
30
|
get treeSelection(): IExpression[];
|
|
33
31
|
constructor(options: IViewletViewOptions, contextMenuService: IContextMenuService, debugService: IDebugService, keybindingService: IKeybindingService, instantiationService: IInstantiationService, viewDescriptorService: IViewDescriptorService, configurationService: IConfigurationService, contextKeyService: IContextKeyService, openerService: IOpenerService, themeService: IThemeService, hoverService: IHoverService, menuService: IMenuService);
|
|
@@ -6,7 +6,7 @@ import { RunOnceScheduler } from '@codingame/monaco-vscode-api/vscode/vs/base/co
|
|
|
6
6
|
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
7
7
|
import { KeyMod, KeyCode } from '@codingame/monaco-vscode-api/vscode/vs/base/common/keyCodes';
|
|
8
8
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
9
|
-
import {
|
|
9
|
+
import { getContextMenuActions } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/menuEntryActionViewItem';
|
|
10
10
|
import { MenuId, registerAction2, Action2 } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
|
|
11
11
|
import { IMenuService } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions.service';
|
|
12
12
|
import { IClipboardService } from '@codingame/monaco-vscode-api/vscode/vs/platform/clipboard/common/clipboardService.service';
|
|
@@ -24,11 +24,11 @@ import { IThemeService } from '@codingame/monaco-vscode-api/vscode/vs/platform/t
|
|
|
24
24
|
import { ViewPane, ViewAction } from '@codingame/monaco-vscode-501b06ab-3f58-516b-8a1a-c29d375d3da4-common/vscode/vs/workbench/browser/parts/views/viewPane';
|
|
25
25
|
import { FocusedViewContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
|
|
26
26
|
import { IViewDescriptorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/views.service';
|
|
27
|
-
import { CONTEXT_WATCH_EXPRESSIONS_EXIST,
|
|
27
|
+
import { CONTEXT_WATCH_EXPRESSIONS_EXIST, CONTEXT_WATCH_EXPRESSIONS_FOCUSED, CONTEXT_VARIABLE_EVALUATE_NAME_PRESENT, CONTEXT_WATCH_ITEM_TYPE, CONTEXT_CAN_VIEW_MEMORY, CONTEXT_VARIABLE_IS_READONLY, CONTEXT_VARIABLE_TYPE, CONTEXT_DEBUG_TYPE, CONTEXT_BREAK_WHEN_VALUE_CHANGES_SUPPORTED, CONTEXT_BREAK_WHEN_VALUE_IS_ACCESSED_SUPPORTED, CONTEXT_BREAK_WHEN_VALUE_IS_READ_SUPPORTED, WATCH_VIEW_ID, CONTEXT_EXPRESSION_SELECTED } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/debug/common/debug';
|
|
28
28
|
import { IDebugService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/debug/common/debug.service';
|
|
29
29
|
import { Expression, Variable, VisualizedExpression } from '@codingame/monaco-vscode-88aa9a78-75f5-5aaa-89e9-bbdd580b3b5c-common/vscode/vs/workbench/contrib/debug/common/debugModel';
|
|
30
30
|
import { renderViewTree, expressionAndScopeLabelProvider, AbstractExpressionDataSource, AbstractExpressionsRenderer } from '@codingame/monaco-vscode-88aa9a78-75f5-5aaa-89e9-bbdd580b3b5c-common/vscode/vs/workbench/contrib/debug/browser/baseDebugView';
|
|
31
|
-
import { COPY_WATCH_EXPRESSION_COMMAND_ID } from '@codingame/monaco-vscode-88aa9a78-75f5-5aaa-89e9-bbdd580b3b5c-common/vscode/vs/workbench/contrib/debug/browser/debugCommands';
|
|
31
|
+
import { setDataBreakpointInfoResponse, COPY_WATCH_EXPRESSION_COMMAND_ID } from '@codingame/monaco-vscode-88aa9a78-75f5-5aaa-89e9-bbdd580b3b5c-common/vscode/vs/workbench/contrib/debug/browser/debugCommands';
|
|
32
32
|
import { DebugExpressionRenderer } from '@codingame/monaco-vscode-88aa9a78-75f5-5aaa-89e9-bbdd580b3b5c-common/vscode/vs/workbench/contrib/debug/browser/debugExpressionRenderer';
|
|
33
33
|
import { watchExpressionsAdd, watchExpressionsRemoveAll } from '@codingame/monaco-vscode-fc42f049-7883-579d-bb0b-2aa1010a19a8-common/vscode/vs/workbench/contrib/debug/browser/debugIcons';
|
|
34
34
|
import { VariablesRenderer, VisualizedVariableRenderer } from '@codingame/monaco-vscode-88aa9a78-75f5-5aaa-89e9-bbdd580b3b5c-common/vscode/vs/workbench/contrib/debug/browser/variablesView';
|
|
@@ -44,17 +44,14 @@ let WatchExpressionsView = class WatchExpressionsView extends ViewPane {
|
|
|
44
44
|
constructor(options, contextMenuService, debugService, keybindingService, instantiationService, viewDescriptorService, configurationService, contextKeyService, openerService, themeService, hoverService, menuService) {
|
|
45
45
|
super(options, keybindingService, contextMenuService, configurationService, contextKeyService, viewDescriptorService, instantiationService, openerService, themeService, hoverService);
|
|
46
46
|
this.debugService = debugService;
|
|
47
|
+
this.menuService = menuService;
|
|
47
48
|
this.needsRefresh = false;
|
|
48
|
-
this.menu = menuService.createMenu(MenuId.DebugWatchContext, contextKeyService);
|
|
49
|
-
this._register(this.menu);
|
|
50
49
|
this.watchExpressionsUpdatedScheduler = ( new RunOnceScheduler(() => {
|
|
51
50
|
this.needsRefresh = false;
|
|
52
51
|
this.tree.updateChildren();
|
|
53
52
|
}, 50));
|
|
54
53
|
this.watchExpressionsExist = CONTEXT_WATCH_EXPRESSIONS_EXIST.bindTo(contextKeyService);
|
|
55
|
-
this.variableReadonly = CONTEXT_VARIABLE_IS_READONLY.bindTo(contextKeyService);
|
|
56
54
|
this.watchExpressionsExist.set(this.debugService.getModel().getWatchExpressions().length > 0);
|
|
57
|
-
this.watchItemType = CONTEXT_WATCH_ITEM_TYPE.bindTo(contextKeyService);
|
|
58
55
|
this.expressionRenderer = instantiationService.createInstance(DebugExpressionRenderer);
|
|
59
56
|
}
|
|
60
57
|
renderBody(container) {
|
|
@@ -170,16 +167,18 @@ let WatchExpressionsView = class WatchExpressionsView extends ViewPane {
|
|
|
170
167
|
this.debugService.addWatchExpression();
|
|
171
168
|
}
|
|
172
169
|
}
|
|
173
|
-
onContextMenu(e) {
|
|
170
|
+
async onContextMenu(e) {
|
|
174
171
|
const element = e.element;
|
|
172
|
+
if (!element) {
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
175
|
const selection = this.tree.getSelection();
|
|
176
|
-
|
|
177
|
-
const
|
|
178
|
-
|
|
179
|
-
const actions = getFlatContextMenuActions(this.menu.getActions({ arg: element, shouldForwardArgs: true }));
|
|
176
|
+
const contextKeyService = element && (await getContextForWatchExpressionMenuWithDataAccess(this.contextKeyService, element));
|
|
177
|
+
const menu = this.menuService.getMenuActions(MenuId.DebugWatchContext, contextKeyService, { arg: element, shouldForwardArgs: false });
|
|
178
|
+
const { secondary } = getContextMenuActions(menu, 'inline');
|
|
180
179
|
this.contextMenuService.showContextMenu({
|
|
181
180
|
getAnchor: () => e.anchor,
|
|
182
|
-
getActions: () =>
|
|
181
|
+
getActions: () => secondary,
|
|
183
182
|
getActionsContext: () => element && selection.includes(element) ? selection : element ? [element] : [],
|
|
184
183
|
});
|
|
185
184
|
}
|
|
@@ -289,7 +288,7 @@ let WatchExpressionsRenderer = class WatchExpressionsRenderer extends AbstractEx
|
|
|
289
288
|
if (settingValue) {
|
|
290
289
|
return {
|
|
291
290
|
initialValue: expression.value,
|
|
292
|
-
ariaLabel: ( localize(
|
|
291
|
+
ariaLabel: ( localize(6372, "Type new value")),
|
|
293
292
|
onFinish: async (value, success) => {
|
|
294
293
|
if (success && value) {
|
|
295
294
|
const focusedFrame = this.debugService.getViewModel().focusedStackFrame;
|
|
@@ -303,8 +302,8 @@ let WatchExpressionsRenderer = class WatchExpressionsRenderer extends AbstractEx
|
|
|
303
302
|
}
|
|
304
303
|
return {
|
|
305
304
|
initialValue: expression.name ? expression.name : '',
|
|
306
|
-
ariaLabel: ( localize(
|
|
307
|
-
placeholder: ( localize(
|
|
305
|
+
ariaLabel: ( localize(6373, "Type watch expression")),
|
|
306
|
+
placeholder: ( localize(6374, "Expression to watch")),
|
|
308
307
|
onFinish: (value, success) => {
|
|
309
308
|
if (success && value) {
|
|
310
309
|
this.debugService.renameWatchExpression(expression.getId(), value);
|
|
@@ -336,27 +335,68 @@ WatchExpressionsRenderer = WatchExpressionsRenderer_1 = ( __decorate([
|
|
|
336
335
|
( __param(5, IHoverService)),
|
|
337
336
|
( __param(6, IConfigurationService))
|
|
338
337
|
], WatchExpressionsRenderer));
|
|
339
|
-
function getContextForWatchExpressionMenu(parentContext, expression) {
|
|
338
|
+
function getContextForWatchExpressionMenu(parentContext, expression, additionalContext = []) {
|
|
339
|
+
const session = expression.getSession();
|
|
340
340
|
return parentContext.createOverlay([
|
|
341
|
-
[
|
|
342
|
-
[CONTEXT_WATCH_ITEM_TYPE.key, 'expression']
|
|
341
|
+
[CONTEXT_VARIABLE_EVALUATE_NAME_PRESENT.key, 'evaluateName' in expression],
|
|
342
|
+
[CONTEXT_WATCH_ITEM_TYPE.key, expression instanceof Expression ? 'expression' : expression instanceof Variable ? 'variable' : undefined],
|
|
343
|
+
[CONTEXT_CAN_VIEW_MEMORY.key, !!session?.capabilities.supportsReadMemoryRequest && expression.memoryReference !== undefined],
|
|
344
|
+
[CONTEXT_VARIABLE_IS_READONLY.key, !!expression.presentationHint?.attributes?.includes('readOnly') || expression.presentationHint?.lazy],
|
|
345
|
+
[CONTEXT_VARIABLE_TYPE.key, expression.type],
|
|
346
|
+
[CONTEXT_DEBUG_TYPE.key, session?.configuration.type],
|
|
347
|
+
...additionalContext
|
|
343
348
|
]);
|
|
344
349
|
}
|
|
350
|
+
async function getContextForWatchExpressionMenuWithDataAccess(parentContext, expression) {
|
|
351
|
+
const session = expression.getSession();
|
|
352
|
+
if (!session || !session.capabilities.supportsDataBreakpoints) {
|
|
353
|
+
return getContextForWatchExpressionMenu(parentContext, expression);
|
|
354
|
+
}
|
|
355
|
+
const contextKeys = [];
|
|
356
|
+
const dataBreakpointInfoResponse = await session.dataBreakpointInfo('evaluateName' in expression ? expression.evaluateName : expression.name);
|
|
357
|
+
const dataBreakpointId = dataBreakpointInfoResponse?.dataId;
|
|
358
|
+
const dataBreakpointAccessTypes = dataBreakpointInfoResponse?.accessTypes;
|
|
359
|
+
setDataBreakpointInfoResponse(dataBreakpointInfoResponse);
|
|
360
|
+
if (!dataBreakpointAccessTypes) {
|
|
361
|
+
contextKeys.push([CONTEXT_BREAK_WHEN_VALUE_CHANGES_SUPPORTED.key, !!dataBreakpointId]);
|
|
362
|
+
}
|
|
363
|
+
else {
|
|
364
|
+
for (const accessType of dataBreakpointAccessTypes) {
|
|
365
|
+
switch (accessType) {
|
|
366
|
+
case 'read':
|
|
367
|
+
contextKeys.push([CONTEXT_BREAK_WHEN_VALUE_IS_READ_SUPPORTED.key, !!dataBreakpointId]);
|
|
368
|
+
break;
|
|
369
|
+
case 'write':
|
|
370
|
+
contextKeys.push([CONTEXT_BREAK_WHEN_VALUE_CHANGES_SUPPORTED.key, !!dataBreakpointId]);
|
|
371
|
+
break;
|
|
372
|
+
case 'readWrite':
|
|
373
|
+
contextKeys.push([CONTEXT_BREAK_WHEN_VALUE_IS_ACCESSED_SUPPORTED.key, !!dataBreakpointId]);
|
|
374
|
+
break;
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
return getContextForWatchExpressionMenu(parentContext, expression, contextKeys);
|
|
379
|
+
}
|
|
345
380
|
class WatchExpressionsAccessibilityProvider {
|
|
346
381
|
getWidgetAriaLabel() {
|
|
347
|
-
return localize(
|
|
382
|
+
return localize(6375, "Debug Watch Expressions");
|
|
348
383
|
}
|
|
349
384
|
getAriaLabel(element) {
|
|
350
385
|
if (element instanceof Expression) {
|
|
351
|
-
return localize(
|
|
386
|
+
return localize(6376, "{0}, value {1}", element.name, element.value);
|
|
352
387
|
}
|
|
353
|
-
return localize(
|
|
388
|
+
return localize(6377, "{0}, value {1}", element.name, element.value);
|
|
354
389
|
}
|
|
355
390
|
}
|
|
356
391
|
class WatchExpressionsDragAndDrop {
|
|
357
392
|
constructor(debugService) {
|
|
358
393
|
this.debugService = debugService;
|
|
359
394
|
}
|
|
395
|
+
onDragStart(data, originalEvent) {
|
|
396
|
+
if (data instanceof ElementsDragAndDropData) {
|
|
397
|
+
originalEvent.dataTransfer.setData('text/plain', data.elements[0].name);
|
|
398
|
+
}
|
|
399
|
+
}
|
|
360
400
|
onDragOver(data, targetElement, targetIndex, targetSector, originalEvent) {
|
|
361
401
|
if (!(data instanceof ElementsDragAndDropData)) {
|
|
362
402
|
return false;
|
|
@@ -431,7 +471,7 @@ registerAction2(class Collapse extends ViewAction {
|
|
|
431
471
|
super({
|
|
432
472
|
id: 'watch.collapse',
|
|
433
473
|
viewId: WATCH_VIEW_ID,
|
|
434
|
-
title: ( localize(
|
|
474
|
+
title: ( localize(6378, "Collapse All")),
|
|
435
475
|
f1: false,
|
|
436
476
|
icon: Codicon.collapseAll,
|
|
437
477
|
precondition: CONTEXT_WATCH_EXPRESSIONS_EXIST,
|
|
@@ -448,7 +488,7 @@ registerAction2(class Collapse extends ViewAction {
|
|
|
448
488
|
}
|
|
449
489
|
});
|
|
450
490
|
const ADD_WATCH_ID = 'workbench.debug.viewlet.action.addWatchExpression';
|
|
451
|
-
const ADD_WATCH_LABEL = ( localize(
|
|
491
|
+
const ADD_WATCH_LABEL = ( localize(6379, "Add Expression"));
|
|
452
492
|
registerAction2(class AddWatchExpressionAction extends Action2 {
|
|
453
493
|
constructor() {
|
|
454
494
|
super({
|
|
@@ -469,7 +509,7 @@ registerAction2(class AddWatchExpressionAction extends Action2 {
|
|
|
469
509
|
}
|
|
470
510
|
});
|
|
471
511
|
const REMOVE_WATCH_EXPRESSIONS_COMMAND_ID = 'workbench.debug.viewlet.action.removeAllWatchExpressions';
|
|
472
|
-
const REMOVE_WATCH_EXPRESSIONS_LABEL = ( localize(
|
|
512
|
+
const REMOVE_WATCH_EXPRESSIONS_LABEL = ( localize(6380, "Remove All Expressions"));
|
|
473
513
|
registerAction2(class RemoveAllWatchExpressionsAction extends Action2 {
|
|
474
514
|
constructor() {
|
|
475
515
|
super({
|
|
@@ -495,7 +535,7 @@ registerAction2(class CopyExpression extends ViewAction {
|
|
|
495
535
|
constructor() {
|
|
496
536
|
super({
|
|
497
537
|
id: COPY_WATCH_EXPRESSION_COMMAND_ID,
|
|
498
|
-
title: ( localize(
|
|
538
|
+
title: ( localize(6381, "Copy Expression")),
|
|
499
539
|
f1: false,
|
|
500
540
|
viewId: WATCH_VIEW_ID,
|
|
501
541
|
precondition: CONTEXT_WATCH_EXPRESSIONS_EXIST,
|
|
@@ -30,7 +30,7 @@ const CONTEXT_DEBUG_START_LANGUAGE = ( new RawContextKey(debugStartLanguageKey,
|
|
|
30
30
|
const CONTEXT_DEBUGGER_INTERESTED_IN_ACTIVE_EDITOR = ( new RawContextKey('debuggerInterestedInActiveEditor', false));
|
|
31
31
|
let WelcomeView = class WelcomeView extends ViewPane {
|
|
32
32
|
static { this.ID = 'workbench.debug.welcome'; }
|
|
33
|
-
static { this.LABEL = ( localize2(
|
|
33
|
+
static { this.LABEL = ( localize2(6382, "Run")); }
|
|
34
34
|
constructor(options, themeService, keybindingService, contextMenuService, configurationService, contextKeyService, debugService, editorService, instantiationService, viewDescriptorService, openerService, storageSevice, hoverService) {
|
|
35
35
|
super(options, keybindingService, contextMenuService, configurationService, contextKeyService, viewDescriptorService, instantiationService, openerService, themeService, hoverService);
|
|
36
36
|
this.debugService = debugService;
|
|
@@ -100,7 +100,7 @@ WelcomeView = ( __decorate([
|
|
|
100
100
|
const viewsRegistry = ( Registry.as(Extensions.ViewsRegistry));
|
|
101
101
|
viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
102
102
|
content: ( localize(
|
|
103
|
-
|
|
103
|
+
6383,
|
|
104
104
|
"[Open a file](command:{0}) which can be debugged or run.",
|
|
105
105
|
OpenFileAction.ID
|
|
106
106
|
)),
|
|
@@ -109,14 +109,14 @@ viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
|
109
109
|
});
|
|
110
110
|
let debugKeybindingLabel = '';
|
|
111
111
|
viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
112
|
-
content: `[${( localize(
|
|
112
|
+
content: `[${( localize(6384, "Run and Debug"))}${debugKeybindingLabel}](command:${DEBUG_START_COMMAND_ID})`,
|
|
113
113
|
when: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
114
114
|
group: ViewContentGroups.Debug,
|
|
115
115
|
order: 1
|
|
116
116
|
});
|
|
117
117
|
viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
118
118
|
content: ( localize(
|
|
119
|
-
|
|
119
|
+
6385,
|
|
120
120
|
"To customize Run and Debug [create a launch.json file](command:{0}).",
|
|
121
121
|
`${DEBUG_CONFIGURE_COMMAND_ID}?${encodeURIComponent(JSON.stringify([{ addNew: true }]))}`
|
|
122
122
|
)),
|
|
@@ -125,7 +125,7 @@ viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
|
125
125
|
});
|
|
126
126
|
viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
127
127
|
content: ( localize(
|
|
128
|
-
|
|
128
|
+
6386,
|
|
129
129
|
"To customize Run and Debug, [open a folder](command:{0}) and create a launch.json file.",
|
|
130
130
|
OpenFolderAction.ID
|
|
131
131
|
)),
|
|
@@ -134,7 +134,7 @@ viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
|
134
134
|
});
|
|
135
135
|
viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
136
136
|
content: ( localize(
|
|
137
|
-
|
|
137
|
+
6387,
|
|
138
138
|
"All debug extensions are disabled. Enable a debug extension or install a new one from the Marketplace."
|
|
139
139
|
)),
|
|
140
140
|
when: ( CONTEXT_DEBUG_EXTENSION_AVAILABLE.toNegated()),
|
|
@@ -53,14 +53,14 @@ let DebugContentProvider = class DebugContentProvider extends Disposable {
|
|
|
53
53
|
session = this.debugService.getViewModel().focusedSession;
|
|
54
54
|
}
|
|
55
55
|
if (!session) {
|
|
56
|
-
return Promise.reject(( new ErrorNoTelemetry(( localize(
|
|
56
|
+
return Promise.reject(( new ErrorNoTelemetry(( localize(6454, "Unable to resolve the resource without a debug session")))));
|
|
57
57
|
}
|
|
58
58
|
const createErrModel = (errMsg) => {
|
|
59
59
|
this.debugService.sourceIsNotAvailable(resource);
|
|
60
60
|
const languageSelection = this.languageService.createById(PLAINTEXT_LANGUAGE_ID);
|
|
61
61
|
const message = errMsg
|
|
62
|
-
? ( localize(
|
|
63
|
-
: ( localize(
|
|
62
|
+
? ( localize(6455, "Could not load source '{0}': {1}.", resource.path, errMsg))
|
|
63
|
+
: ( localize(6456, "Could not load source '{0}'.", resource.path));
|
|
64
64
|
return this.modelService.createModel(message, languageSelection, resource);
|
|
65
65
|
};
|
|
66
66
|
return session.loadSource(resource).then(response => {
|
|
@@ -31,20 +31,20 @@ let DebugLifecycle = class DebugLifecycle {
|
|
|
31
31
|
let message;
|
|
32
32
|
if (numSessions === 1) {
|
|
33
33
|
message = ( localize(
|
|
34
|
-
|
|
34
|
+
6457,
|
|
35
35
|
"There is an active debug session, are you sure you want to stop it?"
|
|
36
36
|
));
|
|
37
37
|
}
|
|
38
38
|
else {
|
|
39
39
|
message = ( localize(
|
|
40
|
-
|
|
40
|
+
6458,
|
|
41
41
|
"There are active debug sessions, are you sure you want to stop them?"
|
|
42
42
|
));
|
|
43
43
|
}
|
|
44
44
|
const res = await this.dialogService.confirm({
|
|
45
45
|
message,
|
|
46
46
|
type: 'warning',
|
|
47
|
-
primaryButton: ( localize(
|
|
47
|
+
primaryButton: ( localize(6459, "&&Stop Debugging"))
|
|
48
48
|
});
|
|
49
49
|
return !res.confirmed;
|
|
50
50
|
}
|