@codingame/monaco-vscode-scm-service-override 14.0.5 → 15.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 +17 -16
- package/vscode/src/vs/workbench/contrib/scm/browser/activity.js +9 -10
- package/vscode/src/vs/workbench/contrib/scm/browser/media/scm.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/scm/browser/menus.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/scm/browser/menus.js +36 -14
- package/vscode/src/vs/workbench/contrib/scm/browser/quickDiffDecorator.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/scm/browser/quickDiffDecorator.js +43 -8
- package/vscode/src/vs/workbench/contrib/scm/browser/quickDiffModel.d.ts +5 -4
- package/vscode/src/vs/workbench/contrib/scm/browser/quickDiffModel.js +5 -7
- package/vscode/src/vs/workbench/contrib/scm/browser/quickDiffWidget.js +22 -20
- package/vscode/src/vs/workbench/contrib/scm/browser/scm.contribution.js +84 -76
- package/vscode/src/vs/workbench/contrib/scm/browser/scmAccessibilityHelp.js +23 -23
- package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryViewPane.d.ts +2 -3
- package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryViewPane.js +43 -44
- package/vscode/src/vs/workbench/contrib/scm/browser/scmRepositoriesViewPane.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/scm/browser/scmRepositoriesViewPane.js +8 -9
- package/vscode/src/vs/workbench/contrib/scm/browser/scmRepositoryRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/scm/browser/scmRepositoryRenderer.js +4 -8
- package/vscode/src/vs/workbench/contrib/scm/browser/scmViewPane.d.ts +2 -3
- package/vscode/src/vs/workbench/contrib/scm/browser/scmViewPane.js +56 -62
- package/vscode/src/vs/workbench/contrib/scm/browser/scmViewPaneContainer.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/scm/browser/scmViewPaneContainer.js +2 -16
- package/vscode/src/vs/workbench/contrib/scm/browser/scmViewService.js +3 -4
- package/vscode/src/vs/workbench/contrib/scm/browser/workingSet.js +4 -7
- package/vscode/src/vs/workbench/contrib/scm/common/scmService.js +1 -4
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-scm-service-override",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "15.0.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "VSCode public API plugged on the monaco editor - scm service-override",
|
|
6
6
|
"keywords": [],
|
|
@@ -15,17 +15,18 @@
|
|
|
15
15
|
},
|
|
16
16
|
"type": "module",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@codingame/monaco-vscode-
|
|
19
|
-
"@codingame/monaco-vscode-
|
|
20
|
-
"@codingame/monaco-vscode-
|
|
21
|
-
"@codingame/monaco-vscode-
|
|
22
|
-
"@codingame/monaco-vscode-
|
|
23
|
-
"@codingame/monaco-vscode-
|
|
24
|
-
"@codingame/monaco-vscode-
|
|
25
|
-
"@codingame/monaco-vscode-
|
|
26
|
-
"@codingame/monaco-vscode-
|
|
27
|
-
"@codingame/monaco-vscode-
|
|
28
|
-
"@codingame/monaco-vscode-
|
|
18
|
+
"@codingame/monaco-vscode-12c5f9eb-72d3-57ca-babd-5bef7aa9de3b-common": "15.0.0",
|
|
19
|
+
"@codingame/monaco-vscode-1bb39316-6fbf-572e-ab6a-818a2496c14f-common": "15.0.0",
|
|
20
|
+
"@codingame/monaco-vscode-27663a0b-1249-58ba-9085-e52d706b50bc-common": "15.0.0",
|
|
21
|
+
"@codingame/monaco-vscode-38f25ab8-ea30-5ba9-8a08-ae3308c297c0-common": "15.0.0",
|
|
22
|
+
"@codingame/monaco-vscode-65619f8f-0eab-5d8b-855a-43b6353fe527-common": "15.0.0",
|
|
23
|
+
"@codingame/monaco-vscode-81f603ca-d6ea-5402-90dd-3014dffc63b4-common": "15.0.0",
|
|
24
|
+
"@codingame/monaco-vscode-a7c9ae3c-16d2-5d17-86b2-981be7094566-common": "15.0.0",
|
|
25
|
+
"@codingame/monaco-vscode-aff8bc9b-c6f8-578f-9c8a-f70d14f9c13c-common": "15.0.0",
|
|
26
|
+
"@codingame/monaco-vscode-api": "15.0.0",
|
|
27
|
+
"@codingame/monaco-vscode-be8ddbb5-094a-5657-b1cc-fe106c94c632-common": "15.0.0",
|
|
28
|
+
"@codingame/monaco-vscode-f99b74f5-fcb7-512f-8c6c-35f5a107577d-common": "15.0.0",
|
|
29
|
+
"@codingame/monaco-vscode-ff9fa663-eae3-5274-8573-c2b918871e4b-common": "15.0.0"
|
|
29
30
|
},
|
|
30
31
|
"main": "index.js",
|
|
31
32
|
"module": "index.js",
|
|
@@ -35,12 +36,12 @@
|
|
|
35
36
|
"default": "./index.js"
|
|
36
37
|
},
|
|
37
38
|
"./vscode/*": {
|
|
38
|
-
"
|
|
39
|
-
"
|
|
39
|
+
"types": "./vscode/src/*.d.ts",
|
|
40
|
+
"default": "./vscode/src/*.js"
|
|
40
41
|
},
|
|
41
42
|
"./*": {
|
|
42
|
-
"
|
|
43
|
-
"
|
|
43
|
+
"types": "./*.d.ts",
|
|
44
|
+
"default": "./*.js"
|
|
44
45
|
}
|
|
45
46
|
},
|
|
46
47
|
"typesVersions": {
|
|
@@ -19,12 +19,11 @@ import { Iterable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/ite
|
|
|
19
19
|
import { ITitleService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/title/browser/titleService.service';
|
|
20
20
|
import { IEditorGroupsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
|
|
21
21
|
import { getRepositoryResourceCount } from '@codingame/monaco-vscode-be8ddbb5-094a-5657-b1cc-fe106c94c632-common/vscode/vs/workbench/contrib/scm/browser/util';
|
|
22
|
-
import '@codingame/monaco-vscode-api/vscode/vs/base/common/
|
|
23
|
-
import { autorunWithStore, autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/autorun';
|
|
24
|
-
import { derived } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/derived';
|
|
25
|
-
import '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
|
|
26
|
-
import { observableFromEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/utils';
|
|
22
|
+
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
27
23
|
import { observableConfigValue } from '@codingame/monaco-vscode-api/vscode/vs/platform/observable/common/platformObservableUtils';
|
|
24
|
+
import { observableFromEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/utils';
|
|
25
|
+
import { derived } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/derived';
|
|
26
|
+
import { autorunWithStore, autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/autorun';
|
|
28
27
|
|
|
29
28
|
const ActiveRepositoryContextKeys = {
|
|
30
29
|
ActiveRepositoryName: ( new RawContextKey('scmActiveRepositoryName', '')),
|
|
@@ -103,7 +102,7 @@ let SCMActiveRepositoryController = class SCMActiveRepositoryController extends
|
|
|
103
102
|
if (count === 0) {
|
|
104
103
|
return;
|
|
105
104
|
}
|
|
106
|
-
const badge = ( new NumberBadge(count, num => ( localize(
|
|
105
|
+
const badge = ( new NumberBadge(count, num => ( localize(8676, '{0} pending changes', num))));
|
|
107
106
|
store.add(this.activityService.showViewActivity(VIEW_PANE_ID, { badge }));
|
|
108
107
|
}
|
|
109
108
|
_updateStatusBar(repository, commands, store) {
|
|
@@ -129,7 +128,7 @@ let SCMActiveRepositoryController = class SCMActiveRepositoryController extends
|
|
|
129
128
|
repoAgnosticActionName = '';
|
|
130
129
|
}
|
|
131
130
|
const statusbarEntry = {
|
|
132
|
-
name: ( localize(
|
|
131
|
+
name: ( localize(8677, "Source Control")) + (repoAgnosticActionName ? ` ${repoAgnosticActionName}` : ''),
|
|
133
132
|
text: command.title,
|
|
134
133
|
ariaLabel: tooltip,
|
|
135
134
|
tooltip,
|
|
@@ -137,7 +136,7 @@ let SCMActiveRepositoryController = class SCMActiveRepositoryController extends
|
|
|
137
136
|
};
|
|
138
137
|
store.add(index === 0 ?
|
|
139
138
|
this.statusbarService.addEntry(statusbarEntry, `status.scm.${index}`, StatusbarAlignment.LEFT, 10000) :
|
|
140
|
-
this.statusbarService.addEntry(statusbarEntry, `status.scm.${index}`, StatusbarAlignment.LEFT, { id: `status.scm.${index - 1}`, alignment: StatusbarAlignment.RIGHT, compact: true }));
|
|
139
|
+
this.statusbarService.addEntry(statusbarEntry, `status.scm.${index}`, StatusbarAlignment.LEFT, { location: { id: `status.scm.${index - 1}`, priority: 10000 }, alignment: StatusbarAlignment.RIGHT, compact: true }));
|
|
141
140
|
}
|
|
142
141
|
}
|
|
143
142
|
_updateActiveRepositoryContextKeys(repositoryName, branchName) {
|
|
@@ -161,8 +160,8 @@ let SCMActiveResourceContextKeyController = class SCMActiveResourceContextKeyCon
|
|
|
161
160
|
this.uriIdentityService = uriIdentityService;
|
|
162
161
|
this._repositories = observableFromEvent(this, Event.any(this.scmService.onDidAddRepository, this.scmService.onDidRemoveRepository), () => this.scmService.repositories);
|
|
163
162
|
this._onDidRepositoryChange = ( new Emitter());
|
|
164
|
-
const activeResourceHasChangesContextKey = ( new RawContextKey('scmActiveResourceHasChanges', false, ( localize(
|
|
165
|
-
const activeResourceRepositoryContextKey = ( new RawContextKey('scmActiveResourceRepository', undefined, ( localize(
|
|
163
|
+
const activeResourceHasChangesContextKey = ( new RawContextKey('scmActiveResourceHasChanges', false, ( localize(8678, "Whether the active resource has changes"))));
|
|
164
|
+
const activeResourceRepositoryContextKey = ( new RawContextKey('scmActiveResourceRepository', undefined, ( localize(8679, "The active resource's repository"))));
|
|
166
165
|
this._store.add(autorunWithStore((reader, store) => {
|
|
167
166
|
for (const repository of this._repositories.read(reader)) {
|
|
168
167
|
store.add(Event.runAndSubscribe(repository.provider.onDidChangeResources, () => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import n from '@codingame/monaco-vscode-api/external/rollup-plugin-styles/dist/runtime/inject-css';
|
|
2
2
|
|
|
3
|
-
var css = ".scm-view{height:100%;position:relative}.scm-overflow-widgets-container{height:0;left:0;overflow:visible;position:absolute;top:0;width:0;z-index:5000}.scm-view .monaco-tl-contents>div{overflow:hidden;padding-right:12px}.scm-view .count{display:flex;margin-left:6px}.scm-view .count.hidden{display:none}.scm-view .scm-provider{align-items:center;display:flex;flex-direction:column;flex-flow:nowrap;height:100%}.scm-view.auto-provider-counts .scm-provider>.count[data-count=\"0\"],.scm-view.hide-provider-counts .scm-provider>.count{display:none}.scm-view .scm-provider>.label{flex:1;min-width:50px;overflow:hidden;text-overflow:ellipsis}.scm-view .scm-provider>.label>.name{font-weight:700}.scm-view .scm-provider>.label>.description{font-size:.9em;margin-left:.5em;opacity:.7}.scm-view .scm-provider>.actions{justify-content:flex-end;overflow:hidden}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item{align-items:center;display:flex;padding-left:4px}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item:first-child{min-width:20px}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.action-label,.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.monaco-dropdown>.dropdown-label>.action-label{align-items:center;display:flex;line-height:16px;overflow:hidden}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.action-label>.codicon{font-size:12px;justify-content:center}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item:last-of-type{padding-right:0}.scm-view .scm-provider>.body{flex-grow:1}.scm-view .scm-provider>.status>.monaco-action-bar>.actions-container{border-color:var(--vscode-sideBar-border)}.scm-view .monaco-list-row{line-height:22px}.scm-view .monaco-list-row .monaco-icon-label-container{height:22px}.scm-view .monaco-list-row .history,.scm-view .monaco-list-row .history-item-group,.scm-view .monaco-list-row .resource-group{align-items:center;display:flex;height:100%}.scm-view .monaco-list-row .history-item .monaco-icon-label,.scm-view .monaco-list-row .history-item-group .monaco-icon-label{align-items:center;flex-grow:1}.scm-view .monaco-list-row .history-item{align-items:center;display:flex}.scm-view .monaco-list-row .history-item>.graph-container{display:flex;flex-shrink:0;height:22px}.scm-view .monaco-list-row .history-item>.graph-container.current>.graph>circle:last-child{fill:var(--vscode-sideBar-background)}.scm-view .monaco-list-row:hover .history-item>.graph-container.current>.graph>circle:last-child{fill:var(--vscode-list-hoverBackground)}.scm-view .monaco-list-row .history-item>.graph-container>.graph>circle{stroke:var(--vscode-sideBar-background)}.scm-view .monaco-list-row:hover .history-item>.graph-container>.graph>circle{stroke:var(--vscode-list-hoverBackground)}.scm-view .monaco-list-row .history-item>.label-container{display:flex;flex-shrink:0;gap:4px}.scm-view .monaco-list-row .history-item>.label-container>.label{align-items:center;border-radius:10px;display:flex;line-height:18px}.scm-view .monaco-list-row .history-item>.label-container>.label>.count{font-size:12px;margin-left:0;padding-left:4px}.scm-view .monaco-list-row .history-item>.label-container>.label>.codicon{color:inherit!important;font-size:14px;padding:2px}.scm-view .monaco-list-row .history-item>.label-container>.label>.codicon.codicon-git-branch{font-size:12px;padding:3px}.scm-view .monaco-list-row .history-item>.label-container>.label>.description{font-size:12px;max-width:100px;overflow:hidden;padding-right:4px;text-overflow:ellipsis}.scm-view .monaco-list-row .history-item .monaco-icon-label .icon-container{display:flex;padding-right:4px}.scm-view .monaco-list-row .history-item .monaco-icon-label .avatar{border-radius:14px;height:14px;width:14px}.scm-view .monaco-list-row .history-item .monaco-icon-label.history-item-current .label-name{font-weight:600}.scm-view .monaco-list-row .history-item .monaco-icon-label.history-item-current .label-description{font-weight:500}.scm-view .monaco-list-row .history>.name,.scm-view .monaco-list-row .resource-group>.name{flex:1;overflow:hidden;text-overflow:ellipsis}.scm-view .monaco-list-row .resource{display:flex;height:100%}.scm-view .monaco-list-row .resource.faded{opacity:.7}.scm-view .monaco-list-row .resource>.name{flex:1;overflow:hidden}.scm-view .monaco-list-row .resource>.name>.monaco-icon-label:after{margin-right:3px}.scm-view .monaco-list-row .resource>.decoration-icon{background-position:50% 50%;background-repeat:no-repeat;height:100%;margin-left:5px;width:16px}.scm-view .monaco-list-row .resource>.decoration-icon.codicon{margin-right:0;margin-top:3px}.scm-view .monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions{flex-grow:100}.scm-view .monaco-list .monaco-list-row .history-item>.actions,.scm-view .monaco-list .monaco-list-row .resource-group>.actions,.scm-view .monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions{display:none;max-width:fit-content}.scm-view .monaco-list .monaco-list-row.focused .history-item>.actions,.scm-view .monaco-list .monaco-list-row.focused .resource-group>.actions,.scm-view .monaco-list .monaco-list-row.focused .resource>.name>.monaco-icon-label>.actions,.scm-view .monaco-list .monaco-list-row:hover .history-item>.actions,.scm-view .monaco-list .monaco-list-row:hover .resource-group>.actions,.scm-view .monaco-list .monaco-list-row:hover .resource>.name>.monaco-icon-label>.actions,.scm-view .monaco-list:not(.selection-multiple) .monaco-list-row .resource:hover>.actions{display:block}.scm-view .monaco-list .monaco-list-row.focused.force-no-hover,.scm-view .monaco-list .monaco-list-row.force-no-hover,.scm-view .monaco-list .monaco-list-row.selected.force-no-hover,.scm-view .monaco-list .monaco-list-row:hover.force-no-hover{background:transparent!important}.scm-view .monaco-list .monaco-list-row.cursor-default{cursor:default}.scm-view.show-actions .scm-provider>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .history-item>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .resource-group>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .scm-input>.scm-editor>.actions{display:block}.scm-view .monaco-list-row .actions .action-label{padding:2px}.scm-view .scm-input{align-items:center;display:flex;height:100%;padding-left:11px}.scm-view .scm-input .scm-editor .scm-editor-toolbar{padding:1px 3px 1px 1px}.scm-view .scm-input .scm-editor .scm-editor-toolbar.hidden{display:none}.scm-view .scm-input .scm-editor .scm-editor-toolbar.scroll-decoration{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.scm-view .scm-input .scm-editor .scm-editor-toolbar .action-label.codicon.codicon-debug-stop{color:var(--vscode-icon-foreground)!important}.scm-view .scm-editor-container .monaco-editor{border-radius:2px}.scm-view .scm-editor{align-items:flex-start;background-color:var(--vscode-input-background);border:1px solid var(--vscode-input-border,transparent);border-radius:2px;box-sizing:border-box;display:flex;width:100%}.scm-view .button-container{align-items:center;display:flex;height:100%;padding-left:11px}.scm-view .button-container .codicon.codicon-cloud-upload,.scm-view .button-container .codicon.codicon-sync{margin:0 4px 0 0}.scm-view .button-container .codicon.codicon-arrow-down,.scm-view .button-container .codicon.codicon-arrow-up{font-size:small!important;margin:0 4px 0 0}.scm-view .button-container>.monaco-button-dropdown{flex-grow:1;overflow:hidden}.scm-view .button-container>.monaco-button-dropdown>.monaco-dropdown-button{align-items:center;display:flex;padding:0 4px}.scm-view .button-container>.monaco-button-dropdown>.monaco-button.monaco-text-button{min-width:0}.scm-view .button-container>.monaco-button-dropdown>.monaco-button.monaco-text-button>span:not(.codicon){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scm-view .scm-editor.hidden{display:none}.monaco-workbench .part.panel .scm-view .scm-editor-container{outline:1px solid var(--vscode-panelInput-border)}.monaco-workbench .part.panel .scm-view .scm-editor.synthetic-focus,.scm-view .scm-editor.synthetic-focus{outline:1px solid var(--vscode-focusBorder);outline-offset:-1px}.scm-view .scm-editor.validation-info{outline:1px solid var(--vscode-inputValidation-infoBorder)!important;outline-offset:-1px}.scm-view .scm-editor.validation-warning{outline:1px solid var(--vscode-inputValidation-warningBorder)!important;outline-offset:-1px}.scm-view .scm-editor.validation-error{outline:1px solid var(--vscode-inputValidation-errorBorder)!important;outline-offset:-1px}.scm-editor-validation-container{border-bottom-left-radius:2px;border-bottom-right-radius:2px;border-style:solid;border-width:1px;border-top:none;box-sizing:border-box;display:flex;padding:2px}.scm-editor-validation-container.validation-info{background-color:var(--vscode-inputValidation-infoBackground);border-color:var(--vscode-inputValidation-infoBorder);color:var(--vscode-inputValidation-infoForeground)}.scm-editor-validation-container.validation-warning{background-color:var(--vscode-inputValidation-warningBackground);border-color:var(--vscode-inputValidation-warningBorder);color:var(--vscode-inputValidation-warningForeground)}.scm-editor-validation-container.validation-error{background-color:var(--vscode-inputValidation-errorBackground);border-color:var(--vscode-inputValidation-errorBorder);color:var(--vscode-inputValidation-errorForeground)}.scm-editor-validation{border-style:none;box-sizing:border-box;display:block;flex:auto;font-size:.9em;padding:1px 3px}.scm-editor-validation p{margin:0;padding:0}.scm-editor-validation a{color:var(--vscode-textLink-foreground);-webkit-user-select:none;user-select:none}.scm-editor-validation a:active,.scm-editor-validation a:hover{color:var(--vscode-textLink-activeForeground)}.scm-editor-validation-actions{align-self:start;margin-top:1px}.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor,.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor .margin,.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor .monaco-editor-background,.scm-view .scm-editor-container .monaco-editor,.scm-view .scm-editor-container .monaco-editor .margin,.scm-view .scm-editor-container .monaco-editor-background{background-color:var(--vscode-input-background);color:inherit}.scm-view .scm-editor-container .mtk1{color:var(--vscode-input-foreground)}.scm-view .scm-editor-container .placeholder-text.mtk1{color:var(--vscode-input-placeholderForeground)}.scm-repositories-view .scm-provider{margin:0 12px 0 20px;overflow:hidden}.scm-repositories-view .scm-provider>.label>.name{font-weight:400}.monaco-hover.history-item-hover p:first-child{margin-top:4px}.monaco-hover.history-item-hover p:last-child{margin-bottom:2px!important}.monaco-hover.history-item-hover p:last-child span:not(.codicon){padding:2px 0}.monaco-hover.history-item-hover hr{margin-bottom:4px;margin-top:4px}.monaco-hover.history-item-hover hr+p{margin:4px 0}.monaco-hover.history-item-hover span:not(.codicon){margin-bottom:0!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-git-branch{font-size:12px;margin-bottom:2px!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-tag,.monaco-hover.history-item-hover p>span>span.codicon.codicon-target{font-size:14px;margin-bottom:2px!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-cloud{font-size:14px;margin-bottom:1px!important}.monaco-hover.history-item-hover .hover-row.status-bar .action{align-items:center;display:flex}.monaco-hover.history-item-hover .hover-row.status-bar .action .codicon{color:inherit;font-size:12px}.pane-header .scm-graph-view-badge-container{align-items:center;display:flex;min-width:fit-content}.pane-header .scm-graph-view-badge-container>.scm-graph-view-badge.monaco-count-badge.long{background-color:var(--vscode-badge-background);border:1px solid var(--vscode-contrastBorder);color:var(--vscode-badge-foreground);margin:0 6px;padding:2px 4px}.monaco-workbench .part.auxiliarybar>.title>.title-actions .action-label.scm-graph-history-item-picker,.monaco-workbench .part.auxiliarybar>.title>.title-actions .action-label.scm-graph-repository-picker,.monaco-workbench .part.panel>.title>.title-actions .action-label.scm-graph-history-item-picker,.monaco-workbench .part.panel>.title>.title-actions .action-label.scm-graph-repository-picker{display:flex}.monaco-toolbar .action-item>.action-label.scm-graph-history-item-picker,.monaco-toolbar .action-item>.action-label.scm-graph-repository-picker{align-items:center;color:var(--vscode-icon-foreground);font-weight:400;line-height:16px}.monaco-toolbar .action-item.disabled>.action-label.scm-graph-history-item-picker,.monaco-toolbar .action-item.disabled>.action-label.scm-graph-repository-picker{color:var(--vscode-disabledForeground)}.monaco-toolbar .action-label.scm-graph-history-item-picker .codicon,.monaco-toolbar .action-label.scm-graph-repository-picker .codicon{color:inherit;font-size:14px}.monaco-toolbar .action-label.scm-graph-history-item-picker>.name,.monaco-toolbar .action-label.scm-graph-repository-picker>.name{max-width:100px;overflow:hidden;text-overflow:ellipsis}.scm-history-view .scm-provider .label-name{font-weight:700}.scm-history-view .scm-provider .monaco-icon-label{align-items:center}.scm-history-view .scm-provider .state-label.monaco-count-badge.long{background:var(--vscode-debugView-stateLabelBackground);border-radius:2px;color:var(--vscode-debugView-stateLabelForeground);display:flex;font-size:.8em;margin:0 10px}.scm-history-view .scm-provider .actions{display:flex;flex-grow:1}.scm-history-view .history-item-load-more{display:flex;height:22px}.scm-history-view .history-item-load-more .graph-placeholder{mask-image:linear-gradient(#000,transparent)}.scm-history-view .history-item-load-more .history-item-placeholder{flex-grow:1}.scm-history-view .history-item-load-more .history-item-placeholder .monaco-highlighted-label{align-items:center;color:var(--vscode-textLink-foreground);display:flex;justify-content:center}.scm-history-view .history-item-load-more .history-item-placeholder .monaco-highlighted-label .codicon{color:var(--vscode-textLink-foreground);font-size:12px}.scm-history-view .history-item-load-more .history-item-placeholder.shimmer{padding:2px 0}.scm-history-view .history-item-load-more .history-item-placeholder.shimmer .monaco-icon-label-container{background:var(--vscode-scmGraph-historyItemHoverDefaultLabelBackground);border-radius:2px;height:18px;opacity:.5}";
|
|
3
|
+
var css = ".scm-view{height:100%;position:relative}.scm-overflow-widgets-container{height:0;left:0;overflow:visible;position:absolute;top:0;width:0;z-index:5000}.scm-view .monaco-tl-contents>div{overflow:hidden;padding-right:12px}.scm-view .count{display:flex;margin-left:6px}.scm-view .count.hidden{display:none}.scm-view .scm-provider{align-items:center;display:flex;flex-direction:column;flex-flow:nowrap;height:100%}.scm-view.auto-provider-counts .scm-provider>.count[data-count=\"0\"],.scm-view.hide-provider-counts .scm-provider>.count{display:none}.scm-view .scm-provider>.label{flex:1;min-width:50px;overflow:hidden;text-overflow:ellipsis}.scm-view .scm-provider>.label>.name{font-weight:700}.scm-view .scm-provider>.label>.description{font-size:.9em;margin-left:.5em;opacity:.7}.scm-view .scm-provider>.actions{justify-content:flex-end;overflow:hidden}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item{align-items:center;display:flex;padding-left:4px}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item:first-child{min-width:20px}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.action-label,.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.monaco-dropdown>.dropdown-label>.action-label{align-items:center;display:flex;line-height:16px;overflow:hidden}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.action-label>.codicon{font-size:12px;justify-content:center}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item:last-of-type{padding-right:0}.scm-view .scm-provider>.body{flex-grow:1}.scm-view .scm-provider>.status>.monaco-action-bar>.actions-container{border-color:var(--vscode-sideBar-border)}.scm-view .monaco-list-row{line-height:22px}.scm-view .monaco-list-row .monaco-icon-label-container{height:22px}.scm-view .monaco-list-row .history,.scm-view .monaco-list-row .history-item-group,.scm-view .monaco-list-row .resource-group{align-items:center;display:flex;height:100%}.scm-view .monaco-list-row .history-item .monaco-icon-label,.scm-view .monaco-list-row .history-item-group .monaco-icon-label{align-items:center;flex-grow:1}.scm-view .monaco-list-row .history-item{align-items:center;display:flex}.scm-view .monaco-list-row .history-item>.graph-container{display:flex;flex-shrink:0;height:22px}.scm-view .monaco-list-row .history-item>.graph-container.current>.graph>circle:last-child{fill:var(--vscode-sideBar-background)}.scm-view .monaco-list-row:hover .history-item>.graph-container.current>.graph>circle:last-child{fill:var(--vscode-list-hoverBackground)}.scm-view .monaco-list-row .history-item>.graph-container>.graph>circle{stroke:var(--vscode-sideBar-background)}.scm-view .monaco-list-row:hover .history-item>.graph-container>.graph>circle:first-of-type{stroke:transparent}.scm-view .monaco-list-row .history-item>.label-container{display:flex;flex-shrink:0;gap:4px}.scm-view .monaco-list-row .history-item>.label-container>.label{align-items:center;border-radius:10px;display:flex;line-height:18px}.scm-view .monaco-list-row .history-item>.label-container>.label>.count{font-size:12px;margin-left:0;padding-left:4px}.scm-view .monaco-list-row .history-item>.label-container>.label>.codicon{color:inherit!important;font-size:14px;padding:2px}.scm-view .monaco-list-row .history-item>.label-container>.label>.codicon.codicon-git-branch{font-size:12px;padding:3px}.scm-view .monaco-list-row .history-item>.label-container>.label>.description{font-size:12px;max-width:100px;overflow:hidden;padding-right:4px;text-overflow:ellipsis}.scm-view .monaco-list-row .history-item .monaco-icon-label .icon-container{display:flex;padding-right:4px}.scm-view .monaco-list-row .history-item .monaco-icon-label .avatar{border-radius:14px;height:14px;width:14px}.scm-view .monaco-list-row .history-item .monaco-icon-label.history-item-current .label-name{font-weight:600}.scm-view .monaco-list-row .history-item .monaco-icon-label.history-item-current .label-description{font-weight:500}.scm-view .monaco-list-row .history>.name,.scm-view .monaco-list-row .resource-group>.name{flex:1;overflow:hidden;text-overflow:ellipsis}.scm-view .monaco-list-row .resource{display:flex;height:100%}.scm-view .monaco-list-row .resource.faded{opacity:.7}.scm-view .monaco-list-row .resource>.name{flex:1;overflow:hidden}.scm-view .monaco-list-row .resource>.name>.monaco-icon-label:after{margin-right:3px}.scm-view .monaco-list-row .resource>.decoration-icon{background-position:50% 50%;background-repeat:no-repeat;height:100%;margin-left:5px;width:16px}.scm-view .monaco-list-row .resource>.decoration-icon.codicon{margin-right:0;margin-top:3px}.scm-view .monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions{flex-grow:100}.scm-view .monaco-list .monaco-list-row .history-item>.actions,.scm-view .monaco-list .monaco-list-row .resource-group>.actions,.scm-view .monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions{display:none;max-width:fit-content}.scm-view .monaco-list .monaco-list-row.focused .history-item>.actions,.scm-view .monaco-list .monaco-list-row.focused .resource-group>.actions,.scm-view .monaco-list .monaco-list-row.focused .resource>.name>.monaco-icon-label>.actions,.scm-view .monaco-list .monaco-list-row:hover .history-item>.actions,.scm-view .monaco-list .monaco-list-row:hover .resource-group>.actions,.scm-view .monaco-list .monaco-list-row:hover .resource>.name>.monaco-icon-label>.actions,.scm-view .monaco-list:not(.selection-multiple) .monaco-list-row .resource:hover>.actions{display:block}.scm-view .monaco-list .monaco-list-row.focused.force-no-hover,.scm-view .monaco-list .monaco-list-row.force-no-hover,.scm-view .monaco-list .monaco-list-row.selected.force-no-hover,.scm-view .monaco-list .monaco-list-row:hover.force-no-hover{background:transparent!important}.scm-view .monaco-list .monaco-list-row.cursor-default{cursor:default}.scm-view.show-actions .scm-provider>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .history-item>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .resource-group>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .scm-input>.scm-editor>.actions{display:block}.scm-view .monaco-list-row .actions .action-label{padding:2px}.scm-view .scm-input{align-items:center;display:flex;height:100%;padding-left:11px}.scm-view .scm-input .scm-editor .scm-editor-toolbar{padding:1px 3px 1px 1px}.scm-view .scm-input .scm-editor .scm-editor-toolbar.hidden{display:none}.scm-view .scm-input .scm-editor .scm-editor-toolbar.scroll-decoration{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.scm-view .scm-input .scm-editor .scm-editor-toolbar .action-label.codicon.codicon-debug-stop{color:var(--vscode-icon-foreground)!important}.scm-view .scm-editor-container .monaco-editor{border-radius:2px}.scm-view .scm-editor{align-items:flex-start;background-color:var(--vscode-input-background);border:1px solid var(--vscode-input-border,transparent);border-radius:2px;box-sizing:border-box;display:flex;width:100%}.scm-view .button-container{align-items:center;display:flex;height:100%;padding-left:11px}.scm-view .button-container .codicon.codicon-cloud-upload,.scm-view .button-container .codicon.codicon-sync{margin:0 4px 0 0}.scm-view .button-container .codicon.codicon-arrow-down,.scm-view .button-container .codicon.codicon-arrow-up{font-size:small!important;margin:0 4px 0 0}.scm-view .button-container>.monaco-button-dropdown{flex-grow:1;overflow:hidden}.scm-view .button-container>.monaco-button-dropdown>.monaco-dropdown-button{align-items:center;display:flex;padding:0 4px}.scm-view .button-container>.monaco-button-dropdown>.monaco-button.monaco-text-button{min-width:0}.scm-view .button-container>.monaco-button-dropdown>.monaco-button.monaco-text-button>span:not(.codicon){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scm-view .scm-editor.hidden{display:none}.monaco-workbench .part.panel .scm-view .scm-editor-container{outline:1px solid var(--vscode-panelInput-border)}.monaco-workbench .part.panel .scm-view .scm-editor.synthetic-focus,.scm-view .scm-editor.synthetic-focus{outline:1px solid var(--vscode-focusBorder);outline-offset:-1px}.scm-view .scm-editor.validation-info{outline:1px solid var(--vscode-inputValidation-infoBorder)!important;outline-offset:-1px}.scm-view .scm-editor.validation-warning{outline:1px solid var(--vscode-inputValidation-warningBorder)!important;outline-offset:-1px}.scm-view .scm-editor.validation-error{outline:1px solid var(--vscode-inputValidation-errorBorder)!important;outline-offset:-1px}.scm-editor-validation-container{border-bottom-left-radius:2px;border-bottom-right-radius:2px;border-style:solid;border-width:1px;border-top:none;box-sizing:border-box;display:flex;padding:2px}.scm-editor-validation-container.validation-info{background-color:var(--vscode-inputValidation-infoBackground);border-color:var(--vscode-inputValidation-infoBorder);color:var(--vscode-inputValidation-infoForeground)}.scm-editor-validation-container.validation-warning{background-color:var(--vscode-inputValidation-warningBackground);border-color:var(--vscode-inputValidation-warningBorder);color:var(--vscode-inputValidation-warningForeground)}.scm-editor-validation-container.validation-error{background-color:var(--vscode-inputValidation-errorBackground);border-color:var(--vscode-inputValidation-errorBorder);color:var(--vscode-inputValidation-errorForeground)}.scm-editor-validation{border-style:none;box-sizing:border-box;display:block;flex:auto;font-size:.9em;padding:1px 3px}.scm-editor-validation p{margin:0;padding:0}.scm-editor-validation a{color:var(--vscode-textLink-foreground);-webkit-user-select:none;user-select:none}.scm-editor-validation a:active,.scm-editor-validation a:hover{color:var(--vscode-textLink-activeForeground)}.scm-editor-validation-actions{align-self:start;margin-top:1px}.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor,.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor .margin,.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor .monaco-editor-background,.scm-view .scm-editor-container .monaco-editor,.scm-view .scm-editor-container .monaco-editor .margin,.scm-view .scm-editor-container .monaco-editor-background{background-color:var(--vscode-input-background);color:inherit}.scm-view .scm-editor-container .mtk1{color:var(--vscode-input-foreground)}.scm-view .scm-editor-container .placeholder-text.mtk1{color:var(--vscode-input-placeholderForeground)}.scm-repositories-view .scm-provider{margin:0 12px 0 20px;overflow:hidden}.scm-repositories-view .scm-provider>.label>.name{font-weight:400}.monaco-hover.history-item-hover p:first-child{margin-top:4px}.monaco-hover.history-item-hover p:last-child{margin-bottom:2px!important}.monaco-hover.history-item-hover p:last-child span:not(.codicon){padding:2px 0}.monaco-hover.history-item-hover hr{margin-bottom:4px;margin-top:4px}.monaco-hover.history-item-hover hr+p{margin:4px 0}.monaco-hover.history-item-hover span:not(.codicon){margin-bottom:0!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-git-branch{font-size:12px;margin-bottom:2px!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-tag,.monaco-hover.history-item-hover p>span>span.codicon.codicon-target{font-size:14px;margin-bottom:2px!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-cloud{font-size:14px;margin-bottom:1px!important}.monaco-hover.history-item-hover .hover-row.status-bar .action{align-items:center;display:flex}.monaco-hover.history-item-hover .hover-row.status-bar .action .codicon{color:inherit;font-size:12px}.pane-header .scm-graph-view-badge-container{align-items:center;display:flex;min-width:fit-content}.pane-header .scm-graph-view-badge-container>.scm-graph-view-badge.monaco-count-badge.long{background-color:var(--vscode-badge-background);border:1px solid var(--vscode-contrastBorder);color:var(--vscode-badge-foreground);margin:0 6px;padding:2px 4px}.monaco-workbench .part.auxiliarybar>.title>.title-actions .action-label.scm-graph-history-item-picker,.monaco-workbench .part.auxiliarybar>.title>.title-actions .action-label.scm-graph-repository-picker,.monaco-workbench .part.panel>.title>.title-actions .action-label.scm-graph-history-item-picker,.monaco-workbench .part.panel>.title>.title-actions .action-label.scm-graph-repository-picker,.monaco-workbench .part.sidebar>.title>.title-actions .action-label.scm-graph-history-item-picker,.monaco-workbench .part.sidebar>.title>.title-actions .action-label.scm-graph-repository-picker{display:flex}.monaco-toolbar .action-item>.action-label.scm-graph-history-item-picker,.monaco-toolbar .action-item>.action-label.scm-graph-repository-picker{align-items:center;color:var(--vscode-icon-foreground);font-weight:400;line-height:16px}.monaco-toolbar .action-item.disabled>.action-label.scm-graph-history-item-picker,.monaco-toolbar .action-item.disabled>.action-label.scm-graph-repository-picker{color:var(--vscode-disabledForeground)}.monaco-toolbar .action-label.scm-graph-history-item-picker .codicon,.monaco-toolbar .action-label.scm-graph-repository-picker .codicon{color:inherit;font-size:14px}.monaco-toolbar .action-label.scm-graph-history-item-picker>.name,.monaco-toolbar .action-label.scm-graph-repository-picker>.name{max-width:100px;overflow:hidden;text-overflow:ellipsis}.scm-history-view .scm-provider .label-name{font-weight:700}.scm-history-view .scm-provider .monaco-icon-label{align-items:center}.scm-history-view .scm-provider .state-label.monaco-count-badge.long{background:var(--vscode-debugView-stateLabelBackground);border-radius:2px;color:var(--vscode-debugView-stateLabelForeground);display:flex;font-size:.8em;margin:0 10px}.scm-history-view .scm-provider .actions{display:flex;flex-grow:1}.scm-history-view .history-item-load-more{display:flex;height:22px}.scm-history-view .history-item-load-more .graph-placeholder{mask-image:linear-gradient(#000,transparent)}.scm-history-view .history-item-load-more .history-item-placeholder{flex-grow:1}.scm-history-view .history-item-load-more .history-item-placeholder .monaco-highlighted-label{align-items:center;color:var(--vscode-textLink-foreground);display:flex;justify-content:center}.scm-history-view .history-item-load-more .history-item-placeholder .monaco-highlighted-label .codicon{color:var(--vscode-textLink-foreground);font-size:12px}.scm-history-view .history-item-load-more .history-item-placeholder.shimmer{padding:2px 0}.scm-history-view .history-item-load-more .history-item-placeholder.shimmer .monaco-icon-label-container{background:var(--vscode-scmGraph-historyItemHoverDefaultLabelBackground);border-radius:2px;height:18px;opacity:.5}";
|
|
4
4
|
n(css,{});
|
|
5
5
|
|
|
6
6
|
export { css, css as default };
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { IAction } from "@codingame/monaco-vscode-api/vscode/vs/base/common/actions";
|
|
2
|
+
import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
|
|
2
3
|
import { IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
3
4
|
import { IMenu } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions";
|
|
4
5
|
import { IMenuService } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions.service";
|
|
@@ -12,7 +13,7 @@ export declare class SCMTitleMenu implements IDisposable {
|
|
|
12
13
|
private _secondaryActions;
|
|
13
14
|
get secondaryActions(): IAction[];
|
|
14
15
|
private readonly _onDidChangeTitle;
|
|
15
|
-
readonly onDidChangeTitle:
|
|
16
|
+
readonly onDidChangeTitle: Event<void>;
|
|
16
17
|
readonly menu: IMenu;
|
|
17
18
|
private readonly disposables;
|
|
18
19
|
constructor(menuService: IMenuService, contextKeyService: IContextKeyService);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
3
|
import { equals } from '@codingame/monaco-vscode-api/vscode/vs/base/common/arrays';
|
|
4
|
-
import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
4
|
+
import { Emitter, Event } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
5
5
|
import { DisposableStore, dispose } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
6
6
|
import './media/scm.css.js';
|
|
7
7
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
@@ -48,12 +48,6 @@ SCMTitleMenu = ( __decorate([
|
|
|
48
48
|
( __param(1, IContextKeyService))
|
|
49
49
|
], SCMTitleMenu));
|
|
50
50
|
class SCMMenusItem {
|
|
51
|
-
get resourceGroupMenu() {
|
|
52
|
-
if (!this._resourceGroupMenu) {
|
|
53
|
-
this._resourceGroupMenu = this.menuService.createMenu(MenuId.SCMResourceGroupContext, this.contextKeyService);
|
|
54
|
-
}
|
|
55
|
-
return this._resourceGroupMenu;
|
|
56
|
-
}
|
|
57
51
|
get resourceFolderMenu() {
|
|
58
52
|
if (!this._resourceFolderMenu) {
|
|
59
53
|
this._resourceFolderMenu = this.menuService.createMenu(MenuId.SCMResourceFolderContext, this.contextKeyService);
|
|
@@ -64,6 +58,29 @@ class SCMMenusItem {
|
|
|
64
58
|
this.contextKeyService = contextKeyService;
|
|
65
59
|
this.menuService = menuService;
|
|
66
60
|
}
|
|
61
|
+
getResourceGroupMenu(resourceGroup) {
|
|
62
|
+
if (typeof resourceGroup.contextValue === 'undefined') {
|
|
63
|
+
if (!this.genericResourceGroupMenu) {
|
|
64
|
+
this.genericResourceGroupMenu = this.menuService.createMenu(MenuId.SCMResourceGroupContext, this.contextKeyService);
|
|
65
|
+
}
|
|
66
|
+
return this.genericResourceGroupMenu;
|
|
67
|
+
}
|
|
68
|
+
if (!this.contextualResourceGroupMenus) {
|
|
69
|
+
this.contextualResourceGroupMenus = ( new Map());
|
|
70
|
+
}
|
|
71
|
+
let item = this.contextualResourceGroupMenus.get(resourceGroup.contextValue);
|
|
72
|
+
if (!item) {
|
|
73
|
+
const contextKeyService = this.contextKeyService.createOverlay([['scmResourceGroupState', resourceGroup.contextValue]]);
|
|
74
|
+
const menu = this.menuService.createMenu(MenuId.SCMResourceGroupContext, contextKeyService);
|
|
75
|
+
item = {
|
|
76
|
+
menu, dispose() {
|
|
77
|
+
menu.dispose();
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
this.contextualResourceGroupMenus.set(resourceGroup.contextValue, item);
|
|
81
|
+
}
|
|
82
|
+
return item.menu;
|
|
83
|
+
}
|
|
67
84
|
getResourceMenu(resource) {
|
|
68
85
|
if (typeof resource.contextValue === 'undefined') {
|
|
69
86
|
if (!this.genericResourceMenu) {
|
|
@@ -88,9 +105,14 @@ class SCMMenusItem {
|
|
|
88
105
|
return item.menu;
|
|
89
106
|
}
|
|
90
107
|
dispose() {
|
|
91
|
-
this.
|
|
92
|
-
this._resourceFolderMenu?.dispose();
|
|
108
|
+
this.genericResourceGroupMenu?.dispose();
|
|
93
109
|
this.genericResourceMenu?.dispose();
|
|
110
|
+
this._resourceFolderMenu?.dispose();
|
|
111
|
+
if (this.contextualResourceGroupMenus) {
|
|
112
|
+
dispose(( this.contextualResourceGroupMenus.values()));
|
|
113
|
+
this.contextualResourceGroupMenus.clear();
|
|
114
|
+
this.contextualResourceGroupMenus = undefined;
|
|
115
|
+
}
|
|
94
116
|
if (this.contextualResourceMenus) {
|
|
95
117
|
dispose(( this.contextualResourceMenus.values()));
|
|
96
118
|
this.contextualResourceMenus.clear();
|
|
@@ -126,7 +148,7 @@ let SCMRepositoryMenus = class SCMRepositoryMenus {
|
|
|
126
148
|
this.onDidChangeResourceGroups();
|
|
127
149
|
}
|
|
128
150
|
getResourceGroupMenu(group) {
|
|
129
|
-
return this.getOrCreateResourceGroupMenusItem(group).
|
|
151
|
+
return this.getOrCreateResourceGroupMenusItem(group).getResourceGroupMenu(group);
|
|
130
152
|
}
|
|
131
153
|
getResourceMenu(resource) {
|
|
132
154
|
return this.getOrCreateResourceGroupMenusItem(resource.resourceGroup).getResourceMenu(resource);
|
|
@@ -172,15 +194,15 @@ let SCMMenus = class SCMMenus {
|
|
|
172
194
|
this.menus = ( new Map());
|
|
173
195
|
this.titleMenu = instantiationService.createInstance(SCMTitleMenu);
|
|
174
196
|
scmService.onDidRemoveRepository(this.onDidRemoveRepository, this, this.disposables);
|
|
175
|
-
MenuRegistry.onDidChangeMenu
|
|
176
|
-
if (!( e.has(MenuId.SCMTitle))) {
|
|
197
|
+
this.disposables.add(Event.runAndSubscribe(MenuRegistry.onDidChangeMenu, e => {
|
|
198
|
+
if (e && !( e.has(MenuId.SCMTitle))) {
|
|
177
199
|
return;
|
|
178
200
|
}
|
|
179
201
|
this.repositoryMenuDisposables.clear();
|
|
180
202
|
for (const menuItem of MenuRegistry.getMenuItems(MenuId.SCMTitle)) {
|
|
181
203
|
this.repositoryMenuDisposables.add(MenuRegistry.appendMenuItem(MenuId.SCMSourceControlInline, menuItem));
|
|
182
204
|
}
|
|
183
|
-
}
|
|
205
|
+
}));
|
|
184
206
|
}
|
|
185
207
|
onDidRemoveRepository(repository) {
|
|
186
208
|
const menus = this.menus.get(repository.provider);
|
|
@@ -209,7 +231,7 @@ SCMMenus = ( __decorate([
|
|
|
209
231
|
( __param(1, IInstantiationService))
|
|
210
232
|
], SCMMenus));
|
|
211
233
|
MenuRegistry.appendMenuItem(MenuId.SCMResourceContext, {
|
|
212
|
-
title: ( localize(
|
|
234
|
+
title: ( localize(8680, "Share")),
|
|
213
235
|
submenu: MenuId.SCMResourceContextShare,
|
|
214
236
|
group: '45_share',
|
|
215
237
|
order: 3,
|
|
@@ -4,23 +4,29 @@ import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench
|
|
|
4
4
|
import { IQuickDiffModelService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/scm/browser/quickDiffModel.service";
|
|
5
5
|
import { IWorkbenchContribution } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions";
|
|
6
6
|
import { IUriIdentityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service";
|
|
7
|
+
import { RawContextKey } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey";
|
|
8
|
+
import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
|
|
9
|
+
export declare const quickDiffDecorationCount: RawContextKey<number>;
|
|
7
10
|
export declare class QuickDiffWorkbenchController extends Disposable implements IWorkbenchContribution {
|
|
8
11
|
private readonly editorService;
|
|
9
12
|
private readonly configurationService;
|
|
10
13
|
private readonly quickDiffModelService;
|
|
11
14
|
private readonly uriIdentityService;
|
|
12
15
|
private enabled;
|
|
16
|
+
private readonly quickDiffDecorationCount;
|
|
17
|
+
private readonly activeEditor;
|
|
13
18
|
private readonly decorators;
|
|
14
19
|
private viewState;
|
|
15
20
|
private readonly transientDisposables;
|
|
16
21
|
private readonly stylesheet;
|
|
17
|
-
constructor(editorService: IEditorService, configurationService: IConfigurationService, quickDiffModelService: IQuickDiffModelService, uriIdentityService: IUriIdentityService);
|
|
22
|
+
constructor(editorService: IEditorService, configurationService: IConfigurationService, quickDiffModelService: IQuickDiffModelService, uriIdentityService: IUriIdentityService, contextKeyService: IContextKeyService);
|
|
18
23
|
private onDidChangeConfiguration;
|
|
19
24
|
private onDidChangeDiffWidthConfiguration;
|
|
20
25
|
private onDidChangeDiffVisibilityConfiguration;
|
|
21
26
|
private setViewState;
|
|
22
27
|
private enable;
|
|
23
28
|
private disable;
|
|
29
|
+
private onDidActiveEditorChange;
|
|
24
30
|
private onEditorsChanged;
|
|
25
31
|
dispose(): void;
|
|
26
32
|
}
|
|
@@ -11,12 +11,18 @@ import { isCodeEditor } from '@codingame/monaco-vscode-api/vscode/vs/editor/brow
|
|
|
11
11
|
import { OverviewRulerLane, MinimapPosition } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/model';
|
|
12
12
|
import { createStyleSheet } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/domStylesheets';
|
|
13
13
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
14
|
-
import { minimapGutterAddedBackground, overviewRulerAddedForeground, minimapGutterModifiedBackground, overviewRulerModifiedForeground, minimapGutterDeletedBackground, overviewRulerDeletedForeground, getChangeType, ChangeType } from '@codingame/monaco-vscode-
|
|
14
|
+
import { minimapGutterAddedBackground, overviewRulerAddedForeground, minimapGutterModifiedBackground, overviewRulerModifiedForeground, minimapGutterDeletedBackground, overviewRulerDeletedForeground, getChangeType, ChangeType } from '@codingame/monaco-vscode-1bb39316-6fbf-572e-ab6a-818a2496c14f-common/vscode/vs/workbench/contrib/scm/common/quickDiff';
|
|
15
15
|
import { IQuickDiffModelService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/scm/browser/quickDiffModel.service';
|
|
16
16
|
import { ResourceMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/map';
|
|
17
17
|
import { IUriIdentityService } from '@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service';
|
|
18
|
+
import { RawContextKey } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
|
|
19
|
+
import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
|
|
20
|
+
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
21
|
+
import { observableFromEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/utils';
|
|
22
|
+
import { autorunWithStore, autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/autorun';
|
|
18
23
|
|
|
19
24
|
var QuickDiffDecorator_1;
|
|
25
|
+
const quickDiffDecorationCount = ( new RawContextKey('quickDiffDecorationCount', 0));
|
|
20
26
|
let QuickDiffDecorator = QuickDiffDecorator_1 = class QuickDiffDecorator extends Disposable {
|
|
21
27
|
static createDecoration(className, tooltip, options) {
|
|
22
28
|
const decorationOptions = {
|
|
@@ -50,7 +56,7 @@ let QuickDiffDecorator = QuickDiffDecorator_1 = class QuickDiffDecorator extends
|
|
|
50
56
|
const gutter = decorations === 'all' || decorations === 'gutter';
|
|
51
57
|
const overview = decorations === 'all' || decorations === 'overview';
|
|
52
58
|
const minimap = decorations === 'all' || decorations === 'minimap';
|
|
53
|
-
const diffAdded = ( localize(
|
|
59
|
+
const diffAdded = ( localize(8681, 'Added lines'));
|
|
54
60
|
this.addedOptions = QuickDiffDecorator_1.createDecoration('dirty-diff-added', diffAdded, {
|
|
55
61
|
gutter,
|
|
56
62
|
overview: { active: overview, color: overviewRulerAddedForeground },
|
|
@@ -63,7 +69,7 @@ let QuickDiffDecorator = QuickDiffDecorator_1 = class QuickDiffDecorator extends
|
|
|
63
69
|
minimap: { active: minimap, color: minimapGutterAddedBackground },
|
|
64
70
|
isWholeLine: true
|
|
65
71
|
});
|
|
66
|
-
const diffModified = ( localize(
|
|
72
|
+
const diffModified = ( localize(8682, 'Changed lines'));
|
|
67
73
|
this.modifiedOptions = QuickDiffDecorator_1.createDecoration('dirty-diff-modified', diffModified, {
|
|
68
74
|
gutter,
|
|
69
75
|
overview: { active: overview, color: overviewRulerModifiedForeground },
|
|
@@ -76,7 +82,7 @@ let QuickDiffDecorator = QuickDiffDecorator_1 = class QuickDiffDecorator extends
|
|
|
76
82
|
minimap: { active: minimap, color: minimapGutterModifiedBackground },
|
|
77
83
|
isWholeLine: true
|
|
78
84
|
});
|
|
79
|
-
this.deletedOptions = QuickDiffDecorator_1.createDecoration('dirty-diff-deleted', ( localize(
|
|
85
|
+
this.deletedOptions = QuickDiffDecorator_1.createDecoration('dirty-diff-deleted', ( localize(8683, 'Removed lines')), {
|
|
80
86
|
gutter,
|
|
81
87
|
overview: { active: overview, color: overviewRulerDeletedForeground },
|
|
82
88
|
minimap: { active: minimap, color: minimapGutterDeletedBackground },
|
|
@@ -138,7 +144,7 @@ let QuickDiffDecorator = QuickDiffDecorator_1 = class QuickDiffDecorator extends
|
|
|
138
144
|
}
|
|
139
145
|
dispose() {
|
|
140
146
|
if (this.decorationsCollection) {
|
|
141
|
-
this.decorationsCollection
|
|
147
|
+
this.decorationsCollection.clear();
|
|
142
148
|
}
|
|
143
149
|
this.decorationsCollection = undefined;
|
|
144
150
|
this.quickDiffModelRef.dispose();
|
|
@@ -149,17 +155,19 @@ QuickDiffDecorator = QuickDiffDecorator_1 = ( __decorate([
|
|
|
149
155
|
( __param(2, IConfigurationService))
|
|
150
156
|
], QuickDiffDecorator));
|
|
151
157
|
let QuickDiffWorkbenchController = class QuickDiffWorkbenchController extends Disposable {
|
|
152
|
-
constructor(editorService, configurationService, quickDiffModelService, uriIdentityService) {
|
|
158
|
+
constructor(editorService, configurationService, quickDiffModelService, uriIdentityService, contextKeyService) {
|
|
153
159
|
super();
|
|
154
160
|
this.editorService = editorService;
|
|
155
161
|
this.configurationService = configurationService;
|
|
156
162
|
this.quickDiffModelService = quickDiffModelService;
|
|
157
163
|
this.uriIdentityService = uriIdentityService;
|
|
158
164
|
this.enabled = false;
|
|
165
|
+
this.activeEditor = observableFromEvent(this, this.editorService.onDidActiveEditorChange, () => this.editorService.activeEditor);
|
|
159
166
|
this.decorators = ( new ResourceMap());
|
|
160
167
|
this.viewState = { width: 3, visibility: 'always' };
|
|
161
168
|
this.transientDisposables = this._register(( new DisposableStore()));
|
|
162
169
|
this.stylesheet = createStyleSheet(undefined, undefined, this._store);
|
|
170
|
+
this.quickDiffDecorationCount = quickDiffDecorationCount.bindTo(contextKeyService);
|
|
163
171
|
const onDidChangeConfiguration = Event.filter(configurationService.onDidChangeConfiguration, e => e.affectsConfiguration('scm.diffDecorations'));
|
|
164
172
|
this._register(onDidChangeConfiguration(this.onDidChangeConfiguration, this));
|
|
165
173
|
this.onDidChangeConfiguration();
|
|
@@ -218,6 +226,7 @@ let QuickDiffWorkbenchController = class QuickDiffWorkbenchController extends Di
|
|
|
218
226
|
}
|
|
219
227
|
this.transientDisposables.add(Event.any(this.editorService.onDidCloseEditor, this.editorService.onDidVisibleEditorsChange)(() => this.onEditorsChanged()));
|
|
220
228
|
this.onEditorsChanged();
|
|
229
|
+
this.onDidActiveEditorChange();
|
|
221
230
|
this.enabled = true;
|
|
222
231
|
}
|
|
223
232
|
disable() {
|
|
@@ -225,12 +234,37 @@ let QuickDiffWorkbenchController = class QuickDiffWorkbenchController extends Di
|
|
|
225
234
|
return;
|
|
226
235
|
}
|
|
227
236
|
this.transientDisposables.clear();
|
|
237
|
+
this.quickDiffDecorationCount.set(0);
|
|
228
238
|
for (const [uri, decoratorMap] of this.decorators.entries()) {
|
|
229
239
|
decoratorMap.dispose();
|
|
230
240
|
this.decorators.delete(uri);
|
|
231
241
|
}
|
|
232
242
|
this.enabled = false;
|
|
233
243
|
}
|
|
244
|
+
onDidActiveEditorChange() {
|
|
245
|
+
this.transientDisposables.add(autorunWithStore((reader, store) => {
|
|
246
|
+
const activeEditor = this.activeEditor.read(reader);
|
|
247
|
+
const activeTextEditorControl = this.editorService.activeTextEditorControl;
|
|
248
|
+
if (!isCodeEditor(activeTextEditorControl) || !activeEditor?.resource) {
|
|
249
|
+
this.quickDiffDecorationCount.set(0);
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
252
|
+
const quickDiffModelRef = this.quickDiffModelService.createQuickDiffModelReference(activeEditor.resource);
|
|
253
|
+
if (!quickDiffModelRef) {
|
|
254
|
+
this.quickDiffDecorationCount.set(0);
|
|
255
|
+
return;
|
|
256
|
+
}
|
|
257
|
+
store.add(quickDiffModelRef);
|
|
258
|
+
const visibleDecorationCount = observableFromEvent(this, quickDiffModelRef.object.onDidChange, () => {
|
|
259
|
+
const visibleQuickDiffs = quickDiffModelRef.object.quickDiffs.filter(quickDiff => quickDiff.visible);
|
|
260
|
+
return quickDiffModelRef.object.changes.filter(labeledChange => ( visibleQuickDiffs.some(quickDiff => quickDiff.label === labeledChange.label))).length;
|
|
261
|
+
});
|
|
262
|
+
store.add(autorun(reader => {
|
|
263
|
+
const count = visibleDecorationCount.read(reader);
|
|
264
|
+
this.quickDiffDecorationCount.set(count);
|
|
265
|
+
}));
|
|
266
|
+
}));
|
|
267
|
+
}
|
|
234
268
|
onEditorsChanged() {
|
|
235
269
|
for (const editor of this.editorService.visibleTextEditorControls) {
|
|
236
270
|
if (!isCodeEditor(editor)) {
|
|
@@ -277,7 +311,8 @@ QuickDiffWorkbenchController = ( __decorate([
|
|
|
277
311
|
( __param(0, IEditorService)),
|
|
278
312
|
( __param(1, IConfigurationService)),
|
|
279
313
|
( __param(2, IQuickDiffModelService)),
|
|
280
|
-
( __param(3, IUriIdentityService))
|
|
314
|
+
( __param(3, IUriIdentityService)),
|
|
315
|
+
( __param(4, IContextKeyService))
|
|
281
316
|
], QuickDiffWorkbenchController));
|
|
282
317
|
|
|
283
|
-
export { QuickDiffWorkbenchController };
|
|
318
|
+
export { QuickDiffWorkbenchController, quickDiffDecorationCount };
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
2
|
-
import { IResolvedTextFileEditorModel } from "@codingame/monaco-vscode-
|
|
2
|
+
import { IResolvedTextFileEditorModel } from "@codingame/monaco-vscode-aff8bc9b-c6f8-578f-9c8a-f70d14f9c13c-common/vscode/vs/workbench/services/textfile/common/textfiles";
|
|
3
3
|
import { ITextFileService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/textfile/common/textfiles.service";
|
|
4
4
|
import { Disposable, IReference } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
5
|
-
import { DiffAlgorithmName
|
|
5
|
+
import { DiffAlgorithmName } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/editorWorker";
|
|
6
|
+
import { IEditorWorkerService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/editorWorker.service";
|
|
6
7
|
import { IUriIdentityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service";
|
|
7
8
|
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
8
|
-
import { ITextModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService";
|
|
9
|
+
import { ITextModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service";
|
|
9
10
|
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
10
|
-
import { QuickDiff, QuickDiffChange, QuickDiffResult } from "@codingame/monaco-vscode-
|
|
11
|
+
import { QuickDiff, QuickDiffChange, QuickDiffResult } from "@codingame/monaco-vscode-1bb39316-6fbf-572e-ab6a-818a2496c14f-common/vscode/vs/workbench/contrib/scm/common/quickDiff";
|
|
11
12
|
import { IQuickDiffService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/scm/common/quickDiff.service";
|
|
12
13
|
import { ISCMService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/scm/common/scm.service";
|
|
13
14
|
import { ISplice } from "@codingame/monaco-vscode-api/vscode/vs/base/common/sequence";
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
3
|
import { ResourceMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/map';
|
|
4
4
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
5
|
-
import { isTextFileEditorModel, EncodingMode } from '@codingame/monaco-vscode-
|
|
5
|
+
import { isTextFileEditorModel, EncodingMode } from '@codingame/monaco-vscode-aff8bc9b-c6f8-578f-9c8a-f70d14f9c13c-common/vscode/vs/workbench/services/textfile/common/textfiles';
|
|
6
6
|
import { ITextFileService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/textfile/common/textfiles.service';
|
|
7
7
|
import { ReferenceCollection, Disposable, DisposableStore, DisposableMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
8
|
-
import { IEditorWorkerService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/editorWorker';
|
|
8
|
+
import { IEditorWorkerService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/editorWorker.service';
|
|
9
9
|
import { IUriIdentityService } from '@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service';
|
|
10
|
-
import { ITextModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService';
|
|
10
|
+
import { ITextModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service';
|
|
11
11
|
import { shouldSynchronizeModel } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/model';
|
|
12
|
-
import { compareChanges, getModifiedEndLineNumber } from '@codingame/monaco-vscode-
|
|
12
|
+
import { compareChanges, getModifiedEndLineNumber } from '@codingame/monaco-vscode-1bb39316-6fbf-572e-ab6a-818a2496c14f-common/vscode/vs/workbench/contrib/scm/common/quickDiff';
|
|
13
13
|
import { IQuickDiffService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/scm/common/quickDiff.service';
|
|
14
14
|
import { ThrottledDelayer } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
|
|
15
15
|
import { ISCMService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/scm/common/scm.service';
|
|
@@ -24,10 +24,8 @@ import { IProgressService } from '@codingame/monaco-vscode-api/vscode/vs/platfor
|
|
|
24
24
|
import { WorkingSetEntryState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService';
|
|
25
25
|
import { IChatEditingService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService.service';
|
|
26
26
|
import { Emitter, Event } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
27
|
+
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
27
28
|
import { autorunWithStore, autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/autorun';
|
|
28
|
-
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/derived';
|
|
29
|
-
import '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
|
|
30
|
-
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/utils';
|
|
31
29
|
|
|
32
30
|
const decoratorQuickDiffModelOptions = {
|
|
33
31
|
algorithm: 'legacy',
|