@theia/monaco 1.70.0-next.71 → 1.70.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.
|
@@ -6,6 +6,12 @@ import { MonacoCommandRegistry, MonacoEditorCommandHandler } from './monaco-comm
|
|
|
6
6
|
import { ProtocolToMonacoConverter } from './protocol-to-monaco-converter';
|
|
7
7
|
export declare namespace MonacoCommands {
|
|
8
8
|
const COMMON_ACTIONS: Map<string, string>;
|
|
9
|
+
/**
|
|
10
|
+
* Actions that directly manipulate input content (clipboard, select all).
|
|
11
|
+
* These should only be handled when the editor's text area has focus,
|
|
12
|
+
* not when an overlay widget (e.g. find/replace) or an unrelated input has focus.
|
|
13
|
+
*/
|
|
14
|
+
const INPUT_ACTIONS: Set<string>;
|
|
9
15
|
const GO_TO_DEFINITION = "editor.action.revealDefinition";
|
|
10
16
|
const EXCLUDE_ACTIONS: Set<string>;
|
|
11
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monaco-command.d.ts","sourceRoot":"","sources":["../../src/browser/monaco-command.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAkB,MAAM,gCAAgC,CAAC;AACtG,OAAO,EAAkB,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC9F,OAAO,EAAkB,aAAa,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAU3E,yBAAiB,cAAc,CAAC;IAErB,MAAM,cAAc,qBAOzB,CAAC;IAEI,MAAM,gBAAgB,mCAAmC,CAAC;IAE1D,MAAM,eAAe,aAM1B,CAAC;CACN;AAED,qBACa,2BAA4B,YAAW,mBAAmB;IAGnE,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAGhE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAGpD,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,yBAAyB,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;IAG3C,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAEvC,gBAAgB,IAAI,IAAI;IAKxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8CG;IACH,SAAS,CAAC,sBAAsB,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"monaco-command.d.ts","sourceRoot":"","sources":["../../src/browser/monaco-command.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAkB,MAAM,gCAAgC,CAAC;AACtG,OAAO,EAAkB,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC9F,OAAO,EAAkB,aAAa,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAU3E,yBAAiB,cAAc,CAAC;IAErB,MAAM,cAAc,qBAOzB,CAAC;IAEH;;;;OAIG;IACI,MAAM,aAAa,aAKxB,CAAC;IAEI,MAAM,gBAAgB,mCAAmC,CAAC;IAE1D,MAAM,eAAe,aAM1B,CAAC;CACN;AAED,qBACa,2BAA4B,YAAW,mBAAmB;IAGnE,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAGhE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAGpD,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,yBAAyB,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;IAG3C,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAEvC,gBAAgB,IAAI,IAAI;IAKxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8CG;IACH,SAAS,CAAC,sBAAsB,IAAI,IAAI;IAsFxC,SAAS,CAAC,6BAA6B,IAAI,IAAI;IAU/C,SAAS,CAAC,uBAAuB,IAAI,0BAA0B;IAa/D,SAAS,CAAC,2BAA2B,IAAI,0BAA0B;IAKnE,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAQ1D,SAAS,CAAC,mBAAmB,IAAI,0BAA0B;IAM3D,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAUlD,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAWhE,SAAS,CAAC,uBAAuB,CAAC,SAAS,EAAE,OAAO,GAAG,0BAA0B;IAKjF,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI;IAqB1E,SAAS,CAAC,4BAA4B,IAAI,0BAA0B;IAMpE,SAAS,CAAC,oCAAoC,IAAI,0BAA0B;IAM5E,SAAS,CAAC,eAAe,IAAI;QAAE,MAAM,CAAC,EAAE,YAAY,CAAC;QAAC,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE;cAK7D,YAAY,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;cAMlD,0BAA0B,CAAC,OAAO,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAC;QAAC,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAUvH"}
|
|
@@ -43,6 +43,17 @@ var MonacoCommands;
|
|
|
43
43
|
['editor.action.clipboardCopyAction', browser_1.CommonCommands.COPY.id],
|
|
44
44
|
['editor.action.clipboardPasteAction', browser_1.CommonCommands.PASTE.id]
|
|
45
45
|
]);
|
|
46
|
+
/**
|
|
47
|
+
* Actions that directly manipulate input content (clipboard, select all).
|
|
48
|
+
* These should only be handled when the editor's text area has focus,
|
|
49
|
+
* not when an overlay widget (e.g. find/replace) or an unrelated input has focus.
|
|
50
|
+
*/
|
|
51
|
+
MonacoCommands.INPUT_ACTIONS = new Set([
|
|
52
|
+
'editor.action.selectAll',
|
|
53
|
+
'editor.action.clipboardCutAction',
|
|
54
|
+
'editor.action.clipboardCopyAction',
|
|
55
|
+
'editor.action.clipboardPasteAction'
|
|
56
|
+
]);
|
|
46
57
|
MonacoCommands.GO_TO_DEFINITION = 'editor.action.revealDefinition';
|
|
47
58
|
MonacoCommands.EXCLUDE_ACTIONS = new Set([
|
|
48
59
|
'editor.action.quickCommand',
|
|
@@ -113,13 +124,21 @@ let MonacoEditorCommandHandlers = class MonacoEditorCommandHandlers {
|
|
|
113
124
|
if (MonacoCommands.EXCLUDE_ACTIONS.has(id)) {
|
|
114
125
|
continue;
|
|
115
126
|
}
|
|
127
|
+
const isCommonAction = MonacoCommands.COMMON_ACTIONS.has(id);
|
|
128
|
+
const isInputAction = MonacoCommands.INPUT_ACTIONS.has(id);
|
|
116
129
|
const handler = {
|
|
117
130
|
execute: (...args) => {
|
|
118
131
|
/*
|
|
119
132
|
* We check monaco focused code editor first since they can contain inline like the debug console and embedded editors like in the peek reference.
|
|
120
133
|
* If there is not such then we check last focused editor tracked by us.
|
|
134
|
+
* For input actions (clipboard, select all), we require the editor to have text focus
|
|
135
|
+
* (not just widget focus). This avoids intercepting operations meant for native input
|
|
136
|
+
* fields, including inputs inside Monaco's own overlay widgets like find/replace.
|
|
121
137
|
*/
|
|
122
|
-
const
|
|
138
|
+
const focusedEditor = codeEditorService.getFocusedCodeEditor();
|
|
139
|
+
const editor = isInputAction
|
|
140
|
+
? (focusedEditor?.hasTextFocus() ? focusedEditor : undefined)
|
|
141
|
+
: focusedEditor || codeEditorService.getActiveCodeEditor();
|
|
123
142
|
if (editorActions.has(id)) {
|
|
124
143
|
const action = editor && editor.getAction(id);
|
|
125
144
|
if (!action) {
|
|
@@ -133,12 +152,19 @@ let MonacoEditorCommandHandlers = class MonacoEditorCommandHandlers {
|
|
|
133
152
|
return globalInstantiationService.invokeFunction(monacoCommands.get(id).handler, ...args);
|
|
134
153
|
},
|
|
135
154
|
isEnabled: () => {
|
|
136
|
-
|
|
155
|
+
// For input actions (clipboard, select all), only claim enabled when the editor
|
|
156
|
+
// has text focus (not just widget focus). This allows fallback handlers to handle
|
|
157
|
+
// these actions in native inputs, including inputs inside Monaco's own overlay
|
|
158
|
+
// widgets like the find/replace widget.
|
|
159
|
+
const focusedEditor = codeEditorService.getFocusedCodeEditor();
|
|
160
|
+
const editor = isInputAction
|
|
161
|
+
? (focusedEditor?.hasTextFocus() ? focusedEditor : undefined)
|
|
162
|
+
: focusedEditor || codeEditorService.getActiveCodeEditor();
|
|
137
163
|
if (editorActions.has(id)) {
|
|
138
164
|
const action = editor && editor.getAction(id);
|
|
139
165
|
return !!action && action.isSupported();
|
|
140
166
|
}
|
|
141
|
-
if (!!editorExtensions_1.EditorExtensionsRegistry.getEditorCommand(id) ||
|
|
167
|
+
if (!!editorExtensions_1.EditorExtensionsRegistry.getEditorCommand(id) || isCommonAction) {
|
|
142
168
|
return !!editor;
|
|
143
169
|
}
|
|
144
170
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monaco-command.js","sourceRoot":"","sources":["../../src/browser/monaco-command.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAA4E;AAE5E,8DAA+D;AAC/D,sCAAkD;AAClD,4DAAsG;AACtG,qDAA8F;AAC9F,uDAAwF;AACxF,mDAA+C;AAC/C,uEAA8F;AAC9F,iFAA2E;AAC3E,oDAAiD;AACjD,uGAA4G;AAC5G,iGAAuH;AACvH,oDAAoD;AAEpD,sHAAmH;AACnH,gHAAqH;AACrH,kHAAgH;AAEhH,IAAiB,cAAc,
|
|
1
|
+
{"version":3,"file":"monaco-command.js","sourceRoot":"","sources":["../../src/browser/monaco-command.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/monaco",
|
|
3
|
-
"version": "1.70.0
|
|
3
|
+
"version": "1.70.0",
|
|
4
4
|
"description": "Theia - Monaco Extension",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/core": "1.70.0
|
|
7
|
-
"@theia/editor": "1.70.0
|
|
8
|
-
"@theia/filesystem": "1.70.0
|
|
9
|
-
"@theia/markers": "1.70.0
|
|
6
|
+
"@theia/core": "1.70.0",
|
|
7
|
+
"@theia/editor": "1.70.0",
|
|
8
|
+
"@theia/filesystem": "1.70.0",
|
|
9
|
+
"@theia/markers": "1.70.0",
|
|
10
10
|
"@theia/monaco-editor-core": "1.108.201",
|
|
11
|
-
"@theia/outline-view": "1.70.0
|
|
12
|
-
"@theia/workspace": "1.70.0
|
|
11
|
+
"@theia/outline-view": "1.70.0",
|
|
12
|
+
"@theia/workspace": "1.70.0",
|
|
13
13
|
"fast-plist": "^0.1.2",
|
|
14
14
|
"idb": "^4.0.5",
|
|
15
15
|
"jsonc-parser": "^2.2.0",
|
|
@@ -52,10 +52,10 @@
|
|
|
52
52
|
"watch": "theiaext watch"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@theia/ext-scripts": "1.
|
|
55
|
+
"@theia/ext-scripts": "1.70.0"
|
|
56
56
|
},
|
|
57
57
|
"nyc": {
|
|
58
58
|
"extends": "../../configs/nyc.json"
|
|
59
59
|
},
|
|
60
|
-
"gitHead": "
|
|
60
|
+
"gitHead": "d2e3d1ecaa9b1df7992eeaa1ad4584f436a83e67"
|
|
61
61
|
}
|
|
@@ -44,6 +44,18 @@ export namespace MonacoCommands {
|
|
|
44
44
|
['editor.action.clipboardPasteAction', CommonCommands.PASTE.id]
|
|
45
45
|
]);
|
|
46
46
|
|
|
47
|
+
/**
|
|
48
|
+
* Actions that directly manipulate input content (clipboard, select all).
|
|
49
|
+
* These should only be handled when the editor's text area has focus,
|
|
50
|
+
* not when an overlay widget (e.g. find/replace) or an unrelated input has focus.
|
|
51
|
+
*/
|
|
52
|
+
export const INPUT_ACTIONS = new Set([
|
|
53
|
+
'editor.action.selectAll',
|
|
54
|
+
'editor.action.clipboardCutAction',
|
|
55
|
+
'editor.action.clipboardCopyAction',
|
|
56
|
+
'editor.action.clipboardPasteAction'
|
|
57
|
+
]);
|
|
58
|
+
|
|
47
59
|
export const GO_TO_DEFINITION = 'editor.action.revealDefinition';
|
|
48
60
|
|
|
49
61
|
export const EXCLUDE_ACTIONS = new Set([
|
|
@@ -138,13 +150,21 @@ export class MonacoEditorCommandHandlers implements CommandContribution {
|
|
|
138
150
|
if (MonacoCommands.EXCLUDE_ACTIONS.has(id)) {
|
|
139
151
|
continue;
|
|
140
152
|
}
|
|
153
|
+
const isCommonAction = MonacoCommands.COMMON_ACTIONS.has(id);
|
|
154
|
+
const isInputAction = MonacoCommands.INPUT_ACTIONS.has(id);
|
|
141
155
|
const handler: CommandHandler = {
|
|
142
156
|
execute: (...args) => {
|
|
143
157
|
/*
|
|
144
158
|
* We check monaco focused code editor first since they can contain inline like the debug console and embedded editors like in the peek reference.
|
|
145
159
|
* If there is not such then we check last focused editor tracked by us.
|
|
160
|
+
* For input actions (clipboard, select all), we require the editor to have text focus
|
|
161
|
+
* (not just widget focus). This avoids intercepting operations meant for native input
|
|
162
|
+
* fields, including inputs inside Monaco's own overlay widgets like find/replace.
|
|
146
163
|
*/
|
|
147
|
-
const
|
|
164
|
+
const focusedEditor = codeEditorService.getFocusedCodeEditor();
|
|
165
|
+
const editor = isInputAction
|
|
166
|
+
? (focusedEditor?.hasTextFocus() ? focusedEditor : undefined)
|
|
167
|
+
: focusedEditor || codeEditorService.getActiveCodeEditor();
|
|
148
168
|
if (editorActions.has(id)) {
|
|
149
169
|
const action = editor && editor.getAction(id);
|
|
150
170
|
if (!action) {
|
|
@@ -161,13 +181,20 @@ export class MonacoEditorCommandHandlers implements CommandContribution {
|
|
|
161
181
|
);
|
|
162
182
|
},
|
|
163
183
|
isEnabled: () => {
|
|
164
|
-
|
|
184
|
+
// For input actions (clipboard, select all), only claim enabled when the editor
|
|
185
|
+
// has text focus (not just widget focus). This allows fallback handlers to handle
|
|
186
|
+
// these actions in native inputs, including inputs inside Monaco's own overlay
|
|
187
|
+
// widgets like the find/replace widget.
|
|
188
|
+
const focusedEditor = codeEditorService.getFocusedCodeEditor();
|
|
189
|
+
const editor = isInputAction
|
|
190
|
+
? (focusedEditor?.hasTextFocus() ? focusedEditor : undefined)
|
|
191
|
+
: focusedEditor || codeEditorService.getActiveCodeEditor();
|
|
165
192
|
|
|
166
193
|
if (editorActions.has(id)) {
|
|
167
194
|
const action = editor && editor.getAction(id);
|
|
168
195
|
return !!action && action.isSupported();
|
|
169
196
|
}
|
|
170
|
-
if (!!EditorExtensionsRegistry.getEditorCommand(id) ||
|
|
197
|
+
if (!!EditorExtensionsRegistry.getEditorCommand(id) || isCommonAction) {
|
|
171
198
|
return !!editor;
|
|
172
199
|
}
|
|
173
200
|
return true;
|