@codingame/monaco-vscode-debug-service-override 11.1.1 → 12.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/index.d.ts +2 -1
- package/index.js +27 -1
- package/package.json +42 -8
- package/service-override/tools/debugAssets.d.ts +1 -0
- package/service-override/tools/debugAssets.js +5 -0
- package/vscode/src/vs/platform/debug/common/extensionHostDebugIpc.d.ts +28 -0
- package/vscode/src/vs/platform/debug/common/extensionHostDebugIpc.js +1 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.d.ts +79 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +24 -22
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackView.d.ts +45 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackView.js +108 -132
- package/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.js +208 -264
- package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.d.ts +50 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +46 -40
- package/vscode/src/vs/workbench/contrib/debug/browser/debugAdapterManager.d.ts +71 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugAdapterManager.js +72 -54
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConfigurationManager.d.ts +91 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConfigurationManager.js +151 -148
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConsoleQuickAccess.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConsoleQuickAccess.js +10 -9
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorActions.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorActions.js +65 -107
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.d.ts +64 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +108 -105
- package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.d.ts +65 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +49 -37
- package/vscode/src/vs/workbench/contrib/debug/browser/debugMemory.d.ts +37 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugMemory.js +11 -10
- package/vscode/src/vs/workbench/contrib/debug/browser/debugProgress.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugProgress.js +4 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/debugQuickAccess.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugQuickAccess.js +24 -22
- package/vscode/src/vs/workbench/contrib/debug/browser/debugService.d.ts +160 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugService.js +194 -169
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSession.d.ts +206 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSession.js +150 -173
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSettingMigration.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSettingMigration.js +1 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugStatus.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugStatus.js +14 -11
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTaskRunner.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTaskRunner.js +76 -68
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTitle.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTitle.js +4 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/debugToolBar.d.ts +54 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugToolBar.js +70 -94
- package/vscode/src/vs/workbench/contrib/debug/browser/debugViewlet.d.ts +45 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/debugViewlet.js +59 -84
- package/vscode/src/vs/workbench/contrib/debug/browser/disassemblyView.d.ts +64 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/disassemblyView.js +61 -60
- package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +19 -17
- package/vscode/src/vs/workbench/contrib/debug/browser/extensionHostDebugService.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/extensionHostDebugService.js +7 -4
- package/vscode/src/vs/workbench/contrib/debug/browser/loadedScriptsView.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/loadedScriptsView.js +55 -53
- package/vscode/src/vs/workbench/contrib/debug/browser/media/debug.contribution.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/media/debugHover.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/media/debugToolBar.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/media/debugViewlet.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/media/exceptionWidget.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/media/repl.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/rawDebugSession.d.ts +120 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/rawDebugSession.js +62 -61
- package/vscode/src/vs/workbench/contrib/debug/browser/repl.d.ts +107 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +148 -155
- package/vscode/src/vs/workbench/contrib/debug/browser/replAccessibilityHelp.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/replAccessibilityHelp.js +39 -38
- package/vscode/src/vs/workbench/contrib/debug/browser/replAccessibleView.d.ts +39 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/replAccessibleView.js +8 -5
- package/vscode/src/vs/workbench/contrib/debug/browser/replFilter.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/replFilter.js +6 -4
- package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.d.ts +131 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +42 -40
- package/vscode/src/vs/workbench/contrib/debug/browser/runAndDebugAccessibilityHelp.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/runAndDebugAccessibilityHelp.js +74 -76
- package/vscode/src/vs/workbench/contrib/debug/browser/statusbarColorProvider.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/statusbarColorProvider.js +16 -14
- package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.d.ts +78 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +74 -75
- package/vscode/src/vs/workbench/contrib/debug/browser/watchExpressionsView.d.ts +57 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/watchExpressionsView.js +63 -63
- package/vscode/src/vs/workbench/contrib/debug/browser/welcomeView.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/welcomeView.js +53 -66
- package/vscode/src/vs/workbench/contrib/debug/common/breakpoints.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/debug/common/breakpoints.js +2 -1
- package/vscode/src/vs/workbench/contrib/debug/common/debugAccessibilityAnnouncer.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugAccessibilityAnnouncer.js +3 -2
- package/vscode/src/vs/workbench/contrib/debug/common/debugCompoundRoot.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugCompoundRoot.js +1 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugContentProvider.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugContentProvider.js +16 -15
- package/vscode/src/vs/workbench/contrib/debug/common/debugContext.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugContext.js +1 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugLifecycle.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugLifecycle.js +11 -10
- package/vscode/src/vs/workbench/contrib/debug/common/debugSchemas.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugSchemas.js +51 -50
- package/vscode/src/vs/workbench/contrib/debug/common/debugStorage.d.ts +34 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugStorage.js +26 -22
- package/vscode/src/vs/workbench/contrib/debug/common/debugTelemetry.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugTelemetry.js +2 -1
- package/vscode/src/vs/workbench/contrib/debug/common/debugViewModel.d.ts +77 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugViewModel.js +1 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.js +3 -2
- package/vscode/src/vs/workbench/contrib/debug/common/debugger.d.ts +52 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugger.js +83 -84
- package/vscode/src/vs/workbench/contrib/debug/common/replAccessibilityAnnouncer.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/debug/common/replAccessibilityAnnouncer.js +2 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariableCommands.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariableCommands.js +5 -4
- package/debug.js +0 -26
- package/tools/debugAssets.js +0 -4
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
|
|
1
2
|
import { getDomNodePagePosition } from 'vscode/vscode/vs/base/browser/dom';
|
|
2
3
|
import { Action } from 'vscode/vscode/vs/base/common/actions';
|
|
3
|
-
import { KeyChord } from 'vscode/vscode/vs/base/common/keyCodes';
|
|
4
|
+
import { KeyCode, KeyChord, KeyMod } from 'vscode/vscode/vs/base/common/keyCodes';
|
|
4
5
|
import { EditorAction, registerEditorAction } from 'vscode/vscode/vs/editor/browser/editorExtensions';
|
|
5
6
|
import { ICodeEditorService } from 'vscode/vscode/vs/editor/browser/services/codeEditorService';
|
|
6
7
|
import { Position } from 'vscode/vscode/vs/editor/common/core/position';
|
|
@@ -12,15 +13,16 @@ import { Action2, MenuId, registerAction2 } from 'vscode/vscode/vs/platform/acti
|
|
|
12
13
|
import { IConfigurationService } from 'vscode/vscode/vs/platform/configuration/common/configuration.service';
|
|
13
14
|
import { ContextKeyExpr } from 'vscode/vscode/vs/platform/contextkey/common/contextkey';
|
|
14
15
|
import { IContextMenuService } from 'vscode/vscode/vs/platform/contextview/browser/contextView.service';
|
|
16
|
+
import { KeybindingWeight } from 'vscode/vscode/vs/platform/keybinding/common/keybindingsRegistry';
|
|
15
17
|
import { IUriIdentityService } from 'vscode/vscode/vs/platform/uriIdentity/common/uriIdentity.service';
|
|
16
18
|
import { PanelFocusContext } from 'vscode/vscode/vs/workbench/common/contextkeys';
|
|
17
|
-
import {
|
|
18
|
-
import { openBreakpointSource } from '@codingame/monaco-vscode-
|
|
19
|
+
import { ChatContextKeys } from 'vscode/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
20
|
+
import { openBreakpointSource } from '@codingame/monaco-vscode-88aa9a78-75f5-5aaa-89e9-bbdd580b3b5c-common/vscode/vs/workbench/contrib/debug/browser/breakpointsView';
|
|
19
21
|
import { DisassemblyView } from './disassemblyView.js';
|
|
20
|
-
import { CONTEXT_DEBUGGERS_AVAILABLE, CONTEXT_DISASSEMBLY_VIEW_FOCUS, BREAKPOINT_EDITOR_CONTRIBUTION_ID, CONTEXT_FOCUSED_STACK_FRAME_HAS_INSTRUCTION_POINTER_REFERENCE, CONTEXT_IN_DEBUG_MODE, CONTEXT_DEBUG_STATE, CONTEXT_DISASSEMBLE_REQUEST_SUPPORTED, CONTEXT_LANGUAGE_SUPPORTS_DISASSEMBLE_REQUEST, CONTEXT_CALLSTACK_ITEM_TYPE, REPL_VIEW_ID, WATCH_VIEW_ID, EDITOR_CONTRIBUTION_ID, CONTEXT_STEP_INTO_TARGETS_SUPPORTED, CONTEXT_EXCEPTION_WIDGET_VISIBLE } from 'vscode/vscode/vs/workbench/contrib/debug/common/debug';
|
|
22
|
+
import { CONTEXT_DEBUGGERS_AVAILABLE, CONTEXT_DISASSEMBLY_VIEW_FOCUS, BREAKPOINT_EDITOR_CONTRIBUTION_ID, BreakpointWidgetContext, CONTEXT_FOCUSED_STACK_FRAME_HAS_INSTRUCTION_POINTER_REFERENCE, CONTEXT_IN_DEBUG_MODE, CONTEXT_DEBUG_STATE, CONTEXT_DISASSEMBLE_REQUEST_SUPPORTED, CONTEXT_LANGUAGE_SUPPORTS_DISASSEMBLE_REQUEST, CONTEXT_CALLSTACK_ITEM_TYPE, REPL_VIEW_ID, WATCH_VIEW_ID, EDITOR_CONTRIBUTION_ID, CONTEXT_STEP_INTO_TARGETS_SUPPORTED, CONTEXT_EXCEPTION_WIDGET_VISIBLE } from 'vscode/vscode/vs/workbench/contrib/debug/common/debug';
|
|
21
23
|
import { IDebugService } from 'vscode/vscode/vs/workbench/contrib/debug/common/debug.service';
|
|
22
24
|
import { getEvaluatableExpressionAtPosition } from 'vscode/vscode/vs/workbench/contrib/debug/common/debugUtils';
|
|
23
|
-
import { DisassemblyViewInput } from '@codingame/monaco-vscode-
|
|
25
|
+
import { DisassemblyViewInput } from '@codingame/monaco-vscode-88aa9a78-75f5-5aaa-89e9-bbdd580b3b5c-common/vscode/vs/workbench/contrib/debug/common/disassemblyViewInput';
|
|
24
26
|
import { IEditorService } from 'vscode/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
25
27
|
import { IViewsService } from 'vscode/vscode/vs/workbench/services/views/common/viewsService.service';
|
|
26
28
|
|
|
@@ -29,15 +31,15 @@ class ToggleBreakpointAction extends Action2 {
|
|
|
29
31
|
super({
|
|
30
32
|
id: 'editor.debug.action.toggleBreakpoint',
|
|
31
33
|
title: {
|
|
32
|
-
...( localize2(
|
|
33
|
-
mnemonicTitle: ( localize(
|
|
34
|
+
...( localize2(5247, "Debug: Toggle Breakpoint")),
|
|
35
|
+
mnemonicTitle: ( localize(5248, "Toggle &&Breakpoint")),
|
|
34
36
|
},
|
|
35
37
|
f1: true,
|
|
36
38
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
37
39
|
keybinding: {
|
|
38
|
-
when: (
|
|
39
|
-
primary:
|
|
40
|
-
weight:
|
|
40
|
+
when: ( ContextKeyExpr.or(EditorContextKeys.editorTextFocus, CONTEXT_DISASSEMBLY_VIEW_FOCUS)),
|
|
41
|
+
primary: KeyCode.F9,
|
|
42
|
+
weight: KeybindingWeight.EditorContrib
|
|
41
43
|
},
|
|
42
44
|
menu: {
|
|
43
45
|
id: MenuId.MenubarDebugMenu,
|
|
@@ -70,18 +72,16 @@ class ToggleBreakpointAction extends Action2 {
|
|
|
70
72
|
if (editor?.hasModel()) {
|
|
71
73
|
const modelUri = editor.getModel().uri;
|
|
72
74
|
const canSet = debugService.canSetBreakpointsIn(editor.getModel());
|
|
73
|
-
const lineNumbers = [...(
|
|
74
|
-
|
|
75
|
-
)))];
|
|
76
|
-
await Promise.all(( (lineNumbers.map(async (line) => {
|
|
75
|
+
const lineNumbers = [...( new Set(( editor.getSelections().map(s => s.getPosition().lineNumber))))];
|
|
76
|
+
await Promise.all(( lineNumbers.map(async (line) => {
|
|
77
77
|
const bps = debugService.getModel().getBreakpoints({ lineNumber: line, uri: modelUri });
|
|
78
78
|
if (bps.length) {
|
|
79
|
-
await Promise.all((
|
|
79
|
+
await Promise.all(( bps.map(bp => debugService.removeBreakpoints(bp.getId()))));
|
|
80
80
|
}
|
|
81
81
|
else if (canSet) {
|
|
82
82
|
await debugService.addBreakpoints(modelUri, [{ lineNumber: line }]);
|
|
83
83
|
}
|
|
84
|
-
})))
|
|
84
|
+
})));
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
87
|
}
|
|
@@ -89,12 +89,11 @@ class ConditionalBreakpointAction extends EditorAction {
|
|
|
89
89
|
constructor() {
|
|
90
90
|
super({
|
|
91
91
|
id: 'editor.debug.action.conditionalBreakpoint',
|
|
92
|
-
label: (
|
|
93
|
-
alias: 'Debug: Add Conditional Breakpoint...',
|
|
92
|
+
label: ( localize2(5249, "Debug: Add Conditional Breakpoint...")),
|
|
94
93
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
95
94
|
menuOpts: {
|
|
96
95
|
menuId: MenuId.MenubarNewBreakpointMenu,
|
|
97
|
-
title: ( localize(
|
|
96
|
+
title: ( localize(5250, "&&Conditional Breakpoint...")),
|
|
98
97
|
group: '1_breakpoints',
|
|
99
98
|
order: 1,
|
|
100
99
|
when: CONTEXT_DEBUGGERS_AVAILABLE
|
|
@@ -105,7 +104,7 @@ class ConditionalBreakpointAction extends EditorAction {
|
|
|
105
104
|
const debugService = accessor.get(IDebugService);
|
|
106
105
|
const position = editor.getPosition();
|
|
107
106
|
if (position && editor.hasModel() && debugService.canSetBreakpointsIn(editor.getModel())) {
|
|
108
|
-
editor.getContribution(BREAKPOINT_EDITOR_CONTRIBUTION_ID)?.showBreakpointWidget(position.lineNumber, undefined,
|
|
107
|
+
editor.getContribution(BREAKPOINT_EDITOR_CONTRIBUTION_ID)?.showBreakpointWidget(position.lineNumber, undefined, BreakpointWidgetContext.CONDITION);
|
|
109
108
|
}
|
|
110
109
|
}
|
|
111
110
|
}
|
|
@@ -113,13 +112,12 @@ class LogPointAction extends EditorAction {
|
|
|
113
112
|
constructor() {
|
|
114
113
|
super({
|
|
115
114
|
id: 'editor.debug.action.addLogPoint',
|
|
116
|
-
label: (
|
|
115
|
+
label: ( localize2(5251, "Debug: Add Logpoint...")),
|
|
117
116
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
118
|
-
alias: 'Debug: Add Logpoint...',
|
|
119
117
|
menuOpts: [
|
|
120
118
|
{
|
|
121
119
|
menuId: MenuId.MenubarNewBreakpointMenu,
|
|
122
|
-
title: ( localize(
|
|
120
|
+
title: ( localize(5252, "&&Logpoint...")),
|
|
123
121
|
group: '1_breakpoints',
|
|
124
122
|
order: 4,
|
|
125
123
|
when: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
@@ -131,7 +129,7 @@ class LogPointAction extends EditorAction {
|
|
|
131
129
|
const debugService = accessor.get(IDebugService);
|
|
132
130
|
const position = editor.getPosition();
|
|
133
131
|
if (position && editor.hasModel() && debugService.canSetBreakpointsIn(editor.getModel())) {
|
|
134
|
-
editor.getContribution(BREAKPOINT_EDITOR_CONTRIBUTION_ID)?.showBreakpointWidget(position.lineNumber, position.column,
|
|
132
|
+
editor.getContribution(BREAKPOINT_EDITOR_CONTRIBUTION_ID)?.showBreakpointWidget(position.lineNumber, position.column, BreakpointWidgetContext.LOG_MESSAGE);
|
|
135
133
|
}
|
|
136
134
|
}
|
|
137
135
|
}
|
|
@@ -139,13 +137,13 @@ class TriggerByBreakpointAction extends EditorAction {
|
|
|
139
137
|
constructor() {
|
|
140
138
|
super({
|
|
141
139
|
id: 'editor.debug.action.triggerByBreakpoint',
|
|
142
|
-
label: ( localize(
|
|
140
|
+
label: ( localize(5253, "Debug: Add Triggered Breakpoint...")),
|
|
143
141
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
144
142
|
alias: 'Debug: Triggered Breakpoint...',
|
|
145
143
|
menuOpts: [
|
|
146
144
|
{
|
|
147
145
|
menuId: MenuId.MenubarNewBreakpointMenu,
|
|
148
|
-
title: ( localize(
|
|
146
|
+
title: ( localize(5254, "&&Triggered Breakpoint...")),
|
|
149
147
|
group: '1_breakpoints',
|
|
150
148
|
order: 4,
|
|
151
149
|
when: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
@@ -157,7 +155,7 @@ class TriggerByBreakpointAction extends EditorAction {
|
|
|
157
155
|
const debugService = accessor.get(IDebugService);
|
|
158
156
|
const position = editor.getPosition();
|
|
159
157
|
if (position && editor.hasModel() && debugService.canSetBreakpointsIn(editor.getModel())) {
|
|
160
|
-
editor.getContribution(BREAKPOINT_EDITOR_CONTRIBUTION_ID)?.showBreakpointWidget(position.lineNumber, position.column,
|
|
158
|
+
editor.getContribution(BREAKPOINT_EDITOR_CONTRIBUTION_ID)?.showBreakpointWidget(position.lineNumber, position.column, BreakpointWidgetContext.TRIGGER_POINT);
|
|
161
159
|
}
|
|
162
160
|
}
|
|
163
161
|
}
|
|
@@ -165,12 +163,12 @@ class EditBreakpointAction extends EditorAction {
|
|
|
165
163
|
constructor() {
|
|
166
164
|
super({
|
|
167
165
|
id: 'editor.debug.action.editBreakpoint',
|
|
168
|
-
label: ( localize(
|
|
166
|
+
label: ( localize(5255, "Debug: Edit Breakpoint")),
|
|
169
167
|
alias: 'Debug: Edit Existing Breakpoint',
|
|
170
168
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
171
169
|
menuOpts: {
|
|
172
170
|
menuId: MenuId.MenubarNewBreakpointMenu,
|
|
173
|
-
title: ( localize(
|
|
171
|
+
title: ( localize(5256, "&&Edit Breakpoint")),
|
|
174
172
|
group: '1_breakpoints',
|
|
175
173
|
order: 1,
|
|
176
174
|
when: CONTEXT_DEBUGGERS_AVAILABLE
|
|
@@ -188,12 +186,12 @@ class EditBreakpointAction extends EditorAction {
|
|
|
188
186
|
if (lineBreakpoints.length === 0) {
|
|
189
187
|
return;
|
|
190
188
|
}
|
|
191
|
-
const breakpointDistances = (
|
|
189
|
+
const breakpointDistances = ( lineBreakpoints.map(b => {
|
|
192
190
|
if (!b.column) {
|
|
193
191
|
return position.column;
|
|
194
192
|
}
|
|
195
193
|
return Math.abs(b.column - position.column);
|
|
196
|
-
}))
|
|
194
|
+
}));
|
|
197
195
|
const closestBreakpointIndex = breakpointDistances.indexOf(Math.min(...breakpointDistances));
|
|
198
196
|
const closestBreakpoint = lineBreakpoints[closestBreakpointIndex];
|
|
199
197
|
editor.getContribution(BREAKPOINT_EDITOR_CONTRIBUTION_ID)?.showBreakpointWidget(closestBreakpoint.lineNumber, closestBreakpoint.column);
|
|
@@ -205,8 +203,8 @@ class OpenDisassemblyViewAction extends Action2 {
|
|
|
205
203
|
super({
|
|
206
204
|
id: OpenDisassemblyViewAction.ID,
|
|
207
205
|
title: {
|
|
208
|
-
...( localize2(
|
|
209
|
-
mnemonicTitle: ( localize(
|
|
206
|
+
...( localize2(5257, "Open Disassembly View")),
|
|
207
|
+
mnemonicTitle: ( localize(5258, "&&DisassemblyView")),
|
|
210
208
|
},
|
|
211
209
|
precondition: CONTEXT_FOCUSED_STACK_FRAME_HAS_INSTRUCTION_POINTER_REFERENCE,
|
|
212
210
|
menu: [
|
|
@@ -214,33 +212,17 @@ class OpenDisassemblyViewAction extends Action2 {
|
|
|
214
212
|
id: MenuId.EditorContext,
|
|
215
213
|
group: 'debug',
|
|
216
214
|
order: 5,
|
|
217
|
-
when: (
|
|
218
|
-
CONTEXT_IN_DEBUG_MODE,
|
|
219
|
-
(PanelFocusContext.toNegated()),
|
|
220
|
-
(CONTEXT_DEBUG_STATE.isEqualTo('stopped')),
|
|
221
|
-
EditorContextKeys.editorTextFocus,
|
|
222
|
-
CONTEXT_DISASSEMBLE_REQUEST_SUPPORTED,
|
|
223
|
-
CONTEXT_LANGUAGE_SUPPORTS_DISASSEMBLE_REQUEST
|
|
224
|
-
)))
|
|
215
|
+
when: ( ContextKeyExpr.and(CONTEXT_IN_DEBUG_MODE, ( PanelFocusContext.toNegated()), ( CONTEXT_DEBUG_STATE.isEqualTo('stopped')), EditorContextKeys.editorTextFocus, CONTEXT_DISASSEMBLE_REQUEST_SUPPORTED, CONTEXT_LANGUAGE_SUPPORTS_DISASSEMBLE_REQUEST))
|
|
225
216
|
},
|
|
226
217
|
{
|
|
227
218
|
id: MenuId.DebugCallStackContext,
|
|
228
219
|
group: 'z_commands',
|
|
229
220
|
order: 50,
|
|
230
|
-
when: (
|
|
231
|
-
CONTEXT_IN_DEBUG_MODE,
|
|
232
|
-
(CONTEXT_DEBUG_STATE.isEqualTo('stopped')),
|
|
233
|
-
(CONTEXT_CALLSTACK_ITEM_TYPE.isEqualTo('stackFrame')),
|
|
234
|
-
CONTEXT_DISASSEMBLE_REQUEST_SUPPORTED
|
|
235
|
-
)))
|
|
221
|
+
when: ( ContextKeyExpr.and(CONTEXT_IN_DEBUG_MODE, ( CONTEXT_DEBUG_STATE.isEqualTo('stopped')), ( CONTEXT_CALLSTACK_ITEM_TYPE.isEqualTo('stackFrame')), CONTEXT_DISASSEMBLE_REQUEST_SUPPORTED))
|
|
236
222
|
},
|
|
237
223
|
{
|
|
238
224
|
id: MenuId.CommandPalette,
|
|
239
|
-
when: (
|
|
240
|
-
CONTEXT_IN_DEBUG_MODE,
|
|
241
|
-
(CONTEXT_DEBUG_STATE.isEqualTo('stopped')),
|
|
242
|
-
CONTEXT_DISASSEMBLE_REQUEST_SUPPORTED
|
|
243
|
-
)))
|
|
225
|
+
when: ( ContextKeyExpr.and(CONTEXT_IN_DEBUG_MODE, ( CONTEXT_DEBUG_STATE.isEqualTo('stopped')), CONTEXT_DISASSEMBLE_REQUEST_SUPPORTED))
|
|
244
226
|
}
|
|
245
227
|
]
|
|
246
228
|
});
|
|
@@ -257,11 +239,11 @@ class ToggleDisassemblyViewSourceCodeAction extends Action2 {
|
|
|
257
239
|
super({
|
|
258
240
|
id: ToggleDisassemblyViewSourceCodeAction.ID,
|
|
259
241
|
title: {
|
|
260
|
-
...( localize2(
|
|
261
|
-
mnemonicTitle: ( localize(
|
|
242
|
+
...( localize2(5259, "Toggle Source Code in Disassembly View")),
|
|
243
|
+
mnemonicTitle: ( localize(5260, "&&ToggleSource")),
|
|
262
244
|
},
|
|
263
245
|
metadata: {
|
|
264
|
-
description: ( localize2(
|
|
246
|
+
description: ( localize2(5261, 'Shows or hides source code in disassembly'))
|
|
265
247
|
},
|
|
266
248
|
f1: true,
|
|
267
249
|
});
|
|
@@ -276,18 +258,13 @@ class ToggleDisassemblyViewSourceCodeAction extends Action2 {
|
|
|
276
258
|
}
|
|
277
259
|
class RunToCursorAction extends EditorAction {
|
|
278
260
|
static { this.ID = 'editor.debug.action.runToCursor'; }
|
|
279
|
-
static { this.LABEL = ( localize2(
|
|
261
|
+
static { this.LABEL = ( localize2(5262, "Run to Cursor")); }
|
|
280
262
|
constructor() {
|
|
281
263
|
super({
|
|
282
264
|
id: RunToCursorAction.ID,
|
|
283
265
|
label: RunToCursorAction.LABEL.value,
|
|
284
266
|
alias: 'Debug: Run to Cursor',
|
|
285
|
-
precondition: (
|
|
286
|
-
CONTEXT_DEBUGGERS_AVAILABLE,
|
|
287
|
-
(PanelFocusContext.toNegated()),
|
|
288
|
-
(ContextKeyExpr.or(EditorContextKeys.editorTextFocus, CONTEXT_DISASSEMBLY_VIEW_FOCUS)),
|
|
289
|
-
(CONTEXT_IN_CHAT_SESSION.negate())
|
|
290
|
-
))),
|
|
267
|
+
precondition: ( ContextKeyExpr.and(CONTEXT_DEBUGGERS_AVAILABLE, ( PanelFocusContext.toNegated()), ( ContextKeyExpr.or(EditorContextKeys.editorTextFocus, CONTEXT_DISASSEMBLY_VIEW_FOCUS)), ( ChatContextKeys.inChatSession.negate()))),
|
|
291
268
|
contextMenuOpts: {
|
|
292
269
|
group: 'debug',
|
|
293
270
|
order: 2,
|
|
@@ -314,17 +291,13 @@ class RunToCursorAction extends EditorAction {
|
|
|
314
291
|
}
|
|
315
292
|
class SelectionToReplAction extends EditorAction {
|
|
316
293
|
static { this.ID = 'editor.debug.action.selectionToRepl'; }
|
|
317
|
-
static { this.LABEL = ( localize2(
|
|
294
|
+
static { this.LABEL = ( localize2(5263, "Evaluate in Debug Console")); }
|
|
318
295
|
constructor() {
|
|
319
296
|
super({
|
|
320
297
|
id: SelectionToReplAction.ID,
|
|
321
298
|
label: SelectionToReplAction.LABEL.value,
|
|
322
299
|
alias: 'Debug: Evaluate in Console',
|
|
323
|
-
precondition: (
|
|
324
|
-
CONTEXT_IN_DEBUG_MODE,
|
|
325
|
-
EditorContextKeys.editorTextFocus,
|
|
326
|
-
(CONTEXT_IN_CHAT_SESSION.negate())
|
|
327
|
-
))),
|
|
300
|
+
precondition: ( ContextKeyExpr.and(CONTEXT_IN_DEBUG_MODE, EditorContextKeys.editorTextFocus, ( ChatContextKeys.inChatSession.negate()))),
|
|
328
301
|
contextMenuOpts: {
|
|
329
302
|
group: 'debug',
|
|
330
303
|
order: 0
|
|
@@ -353,17 +326,13 @@ class SelectionToReplAction extends EditorAction {
|
|
|
353
326
|
}
|
|
354
327
|
class SelectionToWatchExpressionsAction extends EditorAction {
|
|
355
328
|
static { this.ID = 'editor.debug.action.selectionToWatch'; }
|
|
356
|
-
static { this.LABEL = ( localize2(
|
|
329
|
+
static { this.LABEL = ( localize2(5264, "Add to Watch")); }
|
|
357
330
|
constructor() {
|
|
358
331
|
super({
|
|
359
332
|
id: SelectionToWatchExpressionsAction.ID,
|
|
360
333
|
label: SelectionToWatchExpressionsAction.LABEL.value,
|
|
361
334
|
alias: 'Debug: Add to Watch',
|
|
362
|
-
precondition: (
|
|
363
|
-
CONTEXT_IN_DEBUG_MODE,
|
|
364
|
-
EditorContextKeys.editorTextFocus,
|
|
365
|
-
(CONTEXT_IN_CHAT_SESSION.negate())
|
|
366
|
-
))),
|
|
335
|
+
precondition: ( ContextKeyExpr.and(CONTEXT_IN_DEBUG_MODE, EditorContextKeys.editorTextFocus, ( ChatContextKeys.inChatSession.negate()))),
|
|
367
336
|
contextMenuOpts: {
|
|
368
337
|
group: 'debug',
|
|
369
338
|
order: 1
|
|
@@ -402,13 +371,12 @@ class ShowDebugHoverAction extends EditorAction {
|
|
|
402
371
|
constructor() {
|
|
403
372
|
super({
|
|
404
373
|
id: 'editor.debug.action.showDebugHover',
|
|
405
|
-
label: (
|
|
406
|
-
alias: 'Debug: Show Hover',
|
|
374
|
+
label: ( localize2(5265, "Debug: Show Hover")),
|
|
407
375
|
precondition: CONTEXT_IN_DEBUG_MODE,
|
|
408
376
|
kbOpts: {
|
|
409
377
|
kbExpr: EditorContextKeys.editorTextFocus,
|
|
410
|
-
primary: KeyChord(
|
|
411
|
-
weight:
|
|
378
|
+
primary: KeyChord(KeyMod.CtrlCmd | KeyCode.KeyK, KeyMod.CtrlCmd | KeyCode.KeyI),
|
|
379
|
+
weight: KeybindingWeight.EditorContrib
|
|
412
380
|
}
|
|
413
381
|
});
|
|
414
382
|
}
|
|
@@ -420,21 +388,16 @@ class ShowDebugHoverAction extends EditorAction {
|
|
|
420
388
|
return editor.getContribution(EDITOR_CONTRIBUTION_ID)?.showHover(position, true);
|
|
421
389
|
}
|
|
422
390
|
}
|
|
423
|
-
const NO_TARGETS_MESSAGE = ( localize(
|
|
391
|
+
const NO_TARGETS_MESSAGE = ( localize(5266, "Step targets are not available here"));
|
|
424
392
|
class StepIntoTargetsAction extends EditorAction {
|
|
425
393
|
static { this.ID = 'editor.debug.action.stepIntoTargets'; }
|
|
426
|
-
static { this.LABEL = ( localize(
|
|
394
|
+
static { this.LABEL = ( localize(5267, "Step Into Target")); }
|
|
427
395
|
constructor() {
|
|
428
396
|
super({
|
|
429
397
|
id: StepIntoTargetsAction.ID,
|
|
430
398
|
label: StepIntoTargetsAction.LABEL,
|
|
431
399
|
alias: 'Debug: Step Into Target',
|
|
432
|
-
precondition: (
|
|
433
|
-
CONTEXT_STEP_INTO_TARGETS_SUPPORTED,
|
|
434
|
-
CONTEXT_IN_DEBUG_MODE,
|
|
435
|
-
(CONTEXT_DEBUG_STATE.isEqualTo('stopped')),
|
|
436
|
-
EditorContextKeys.editorTextFocus
|
|
437
|
-
))),
|
|
400
|
+
precondition: ( ContextKeyExpr.and(CONTEXT_STEP_INTO_TARGETS_SUPPORTED, CONTEXT_IN_DEBUG_MODE, ( CONTEXT_DEBUG_STATE.isEqualTo('stopped')), EditorContextKeys.editorTextFocus)),
|
|
438
401
|
contextMenuOpts: {
|
|
439
402
|
group: 'debug',
|
|
440
403
|
order: 1.5
|
|
@@ -465,8 +428,8 @@ class StepIntoTargetsAction extends EditorAction {
|
|
|
465
428
|
for (const target of targets) {
|
|
466
429
|
if (target.line) {
|
|
467
430
|
positionalTargets.push({
|
|
468
|
-
start: (
|
|
469
|
-
end: target.endLine ? (
|
|
431
|
+
start: ( new Position(target.line, target.column || 1)),
|
|
432
|
+
end: target.endLine ? ( new Position(target.endLine, target.endColumn || 1)) : undefined,
|
|
470
433
|
target
|
|
471
434
|
});
|
|
472
435
|
}
|
|
@@ -487,15 +450,13 @@ class StepIntoTargetsAction extends EditorAction {
|
|
|
487
450
|
contextMenuService.showContextMenu({
|
|
488
451
|
getAnchor: () => ({ x, y }),
|
|
489
452
|
getActions: () => {
|
|
490
|
-
return (
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
)))))
|
|
498
|
-
);
|
|
453
|
+
return ( targets.map(t => ( new Action(
|
|
454
|
+
`stepIntoTarget:${t.id}`,
|
|
455
|
+
t.label,
|
|
456
|
+
undefined,
|
|
457
|
+
true,
|
|
458
|
+
() => session.stepIn(frame.thread.threadId, t.id)
|
|
459
|
+
))));
|
|
499
460
|
}
|
|
500
461
|
});
|
|
501
462
|
}
|
|
@@ -519,8 +480,8 @@ class GoToBreakpointAction extends EditorAction {
|
|
|
519
480
|
if (!moveBreakpoint) {
|
|
520
481
|
moveBreakpoint =
|
|
521
482
|
this.isNext
|
|
522
|
-
? allEnabledBreakpoints.filter(bp => (
|
|
523
|
-
: allEnabledBreakpoints.filter(bp => (
|
|
483
|
+
? allEnabledBreakpoints.filter(bp => ( bp.uri.toString()) > ( currentUri.toString())).shift()
|
|
484
|
+
: allEnabledBreakpoints.filter(bp => ( bp.uri.toString()) < ( currentUri.toString())).pop();
|
|
524
485
|
}
|
|
525
486
|
if (!moveBreakpoint && allEnabledBreakpoints.length) {
|
|
526
487
|
moveBreakpoint = this.isNext ? allEnabledBreakpoints[0] : allEnabledBreakpoints[allEnabledBreakpoints.length - 1];
|
|
@@ -535,8 +496,7 @@ class GoToNextBreakpointAction extends GoToBreakpointAction {
|
|
|
535
496
|
constructor() {
|
|
536
497
|
super(true, {
|
|
537
498
|
id: 'editor.debug.action.goToNextBreakpoint',
|
|
538
|
-
label: (
|
|
539
|
-
alias: 'Debug: Go to Next Breakpoint',
|
|
499
|
+
label: ( localize2(5268, "Debug: Go to Next Breakpoint")),
|
|
540
500
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE
|
|
541
501
|
});
|
|
542
502
|
}
|
|
@@ -545,8 +505,7 @@ class GoToPreviousBreakpointAction extends GoToBreakpointAction {
|
|
|
545
505
|
constructor() {
|
|
546
506
|
super(false, {
|
|
547
507
|
id: 'editor.debug.action.goToPreviousBreakpoint',
|
|
548
|
-
label: (
|
|
549
|
-
alias: 'Debug: Go to Previous Breakpoint',
|
|
508
|
+
label: ( localize2(5269, "Debug: Go to Previous Breakpoint")),
|
|
550
509
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE
|
|
551
510
|
});
|
|
552
511
|
}
|
|
@@ -555,12 +514,11 @@ class CloseExceptionWidgetAction extends EditorAction {
|
|
|
555
514
|
constructor() {
|
|
556
515
|
super({
|
|
557
516
|
id: 'editor.debug.action.closeExceptionWidget',
|
|
558
|
-
label: (
|
|
559
|
-
alias: 'Close Exception Widget',
|
|
517
|
+
label: ( localize2(5270, "Close Exception Widget")),
|
|
560
518
|
precondition: CONTEXT_EXCEPTION_WIDGET_VISIBLE,
|
|
561
519
|
kbOpts: {
|
|
562
|
-
primary:
|
|
563
|
-
weight:
|
|
520
|
+
primary: KeyCode.Escape,
|
|
521
|
+
weight: KeybindingWeight.EditorContrib
|
|
564
522
|
}
|
|
565
523
|
});
|
|
566
524
|
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { IMouseEvent } from "vscode/vscode/vs/base/browser/mouseEvent";
|
|
2
|
+
import { ICodeEditor } from "vscode/vscode/vs/editor/browser/editorBrowser";
|
|
3
|
+
import { Position } from "vscode/vscode/vs/editor/common/core/position";
|
|
4
|
+
import { ILanguageFeatureDebounceService } from "vscode/vscode/vs/editor/common/services/languageFeatureDebounce";
|
|
5
|
+
import { ILanguageFeaturesService } from "vscode/vscode/vs/editor/common/services/languageFeatures";
|
|
6
|
+
import { ICommandService } from "vscode/vscode/vs/platform/commands/common/commands.service";
|
|
7
|
+
import { IConfigurationService } from "vscode/vscode/vs/platform/configuration/common/configuration.service";
|
|
8
|
+
import { IContextKeyService } from "vscode/vscode/vs/platform/contextkey/common/contextkey.service";
|
|
9
|
+
import { IInstantiationService } from "vscode/vscode/vs/platform/instantiation/common/instantiation";
|
|
10
|
+
import { IUriIdentityService } from "vscode/vscode/vs/platform/uriIdentity/common/uriIdentity.service";
|
|
11
|
+
import { IDebugEditorContribution } from "vscode/vscode/vs/workbench/contrib/debug/common/debug";
|
|
12
|
+
import { IDebugService } from "vscode/vscode/vs/workbench/contrib/debug/common/debug.service";
|
|
13
|
+
import { IHostService } from "vscode/vscode/vs/workbench/services/host/browser/host.service";
|
|
14
|
+
export declare const debugInlineForeground: string;
|
|
15
|
+
export declare const debugInlineBackground: string;
|
|
16
|
+
export declare class DebugEditorContribution implements IDebugEditorContribution {
|
|
17
|
+
private editor;
|
|
18
|
+
private readonly debugService;
|
|
19
|
+
private readonly instantiationService;
|
|
20
|
+
private readonly commandService;
|
|
21
|
+
private readonly configurationService;
|
|
22
|
+
private readonly hostService;
|
|
23
|
+
private readonly uriIdentityService;
|
|
24
|
+
private readonly languageFeaturesService;
|
|
25
|
+
private toDispose;
|
|
26
|
+
private hoverWidget;
|
|
27
|
+
private hoverPosition?;
|
|
28
|
+
private mouseDown;
|
|
29
|
+
private exceptionWidgetVisible;
|
|
30
|
+
private gutterIsHovered;
|
|
31
|
+
private exceptionWidget;
|
|
32
|
+
private configurationWidget;
|
|
33
|
+
private readonly altListener;
|
|
34
|
+
private altPressed;
|
|
35
|
+
private oldDecorations;
|
|
36
|
+
private readonly displayedStore;
|
|
37
|
+
private editorHoverOptions;
|
|
38
|
+
private readonly debounceInfo;
|
|
39
|
+
private readonly defaultHoverLockout;
|
|
40
|
+
constructor(editor: ICodeEditor, debugService: IDebugService, instantiationService: IInstantiationService, commandService: ICommandService, configurationService: IConfigurationService, hostService: IHostService, uriIdentityService: IUriIdentityService, contextKeyService: IContextKeyService, languageFeaturesService: ILanguageFeaturesService, featureDebounceService: ILanguageFeatureDebounceService);
|
|
41
|
+
private registerListeners;
|
|
42
|
+
private _wordToLineNumbersMap;
|
|
43
|
+
private updateHoverConfiguration;
|
|
44
|
+
private addDocumentListeners;
|
|
45
|
+
private applyDocumentListeners;
|
|
46
|
+
showHover(position: Position, focus: boolean, mouseEvent?: IMouseEvent): Promise<void>;
|
|
47
|
+
private preventDefaultEditorHover;
|
|
48
|
+
private showEditorHover;
|
|
49
|
+
private onFocusStackFrame;
|
|
50
|
+
private get hoverDelay();
|
|
51
|
+
private get showHoverScheduler();
|
|
52
|
+
private hideHoverWidget;
|
|
53
|
+
private onEditorMouseDown;
|
|
54
|
+
private onEditorMouseMove;
|
|
55
|
+
private onKeyDown;
|
|
56
|
+
private toggleExceptionWidget;
|
|
57
|
+
private showExceptionWidget;
|
|
58
|
+
closeExceptionWidget(): void;
|
|
59
|
+
addLaunchConfiguration(): Promise<void>;
|
|
60
|
+
private get removeInlineValuesScheduler();
|
|
61
|
+
private get updateInlineValuesScheduler();
|
|
62
|
+
private updateInlineValueDecorations;
|
|
63
|
+
dispose(): void;
|
|
64
|
+
}
|