Skip to content

Commit

Permalink
git: give up on using the editor
Browse files Browse the repository at this point in the history
fixes #20983
  • Loading branch information
joaomoreno committed Feb 21, 2017
1 parent 6595091 commit ca1deee
Show file tree
Hide file tree
Showing 13 changed files with 112 additions and 201 deletions.
8 changes: 0 additions & 8 deletions extensions/git/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -212,14 +212,6 @@
"category": "Git"
}
],
"keybindings": [
{
"command": "git.commitWithInput",
"key": "ctrl+enter",
"mac": "cmd+enter",
"when": "inSCMInput"
}
],
"menus": {
"commandPalette": [
{
Expand Down
4 changes: 4 additions & 0 deletions extensions/git/src/scmProvider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,10 @@ export class GitSCMProvider implements SCMProvider {
return this.commandCenter.open(resource);
}

acceptChanges(): ProviderResult<void> {
return this.commandCenter.commitWithInput();
}

drag(resource: Resource, resourceGroup: ResourceGroup): void {
console.log('drag', resource, resourceGroup);
}
Expand Down
7 changes: 6 additions & 1 deletion product.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,10 @@
"win32ShellNameShort": "C&ode - OSS",
"darwinBundleIdentifier": "com.visualstudio.code.oss",
"reportIssueUrl": "https://github.com/Microsoft/vscode/issues/new",
"urlProtocol": "code-oss"
"urlProtocol": "code-oss",
"extensionsGallery": {
"serviceUrl": "https://marketplace.visualstudio.com/_apis/public/gallery",
"cacheUrl": "https://vscode.blob.core.windows.net/gallery/index",
"itemUrl": "https://marketplace.visualstudio.com/items"
}
}
1 change: 1 addition & 0 deletions src/vs/vscode.proposed.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@ declare module 'vscode' {
getOriginalResource?(uri: Uri, token: CancellationToken): ProviderResult<Uri>;
open?(resource: SCMResource, token: CancellationToken): ProviderResult<void>;
drag?(resource: SCMResource, resourceGroup: SCMResourceGroup, token: CancellationToken): ProviderResult<void>;
acceptChanges?(token: CancellationToken): ProviderResult<void>;
}

export interface SCMInputBox {
Expand Down
2 changes: 2 additions & 0 deletions src/vs/workbench/api/node/extHost.protocol.ts
Original file line number Diff line number Diff line change
Expand Up @@ -245,6 +245,7 @@ export abstract class MainProcessExtensionServiceShape {
export interface SCMProviderFeatures {
label: string;
supportsOpen: boolean;
supportsAcceptChanges: boolean;
supportsDrag: boolean;
supportsOriginalResource: boolean;
}
Expand Down Expand Up @@ -394,6 +395,7 @@ export abstract class ExtHostTerminalServiceShape {

export abstract class ExtHostSCMShape {
$open(id: string, resourceGroupId: string, uri: string): TPromise<void> { throw ni(); }
$acceptChanges(id: string): TPromise<void> { throw ni(); }
$drag(id: string, fromResourceGroupId: string, fromUri: string, toResourceGroupId: string): TPromise<void> { throw ni(); }
$getOriginalResource(id: string, uri: URI): TPromise<URI> { throw ni(); }
$onInputBoxValueChange(value: string): TPromise<void> { throw ni(); }
Expand Down
11 changes: 11 additions & 0 deletions src/vs/workbench/api/node/extHostSCM.ts
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,7 @@ export class ExtHostSCM {
this._proxy.$register(providerId, {
label: provider.label,
supportsOpen: !!provider.open,
supportsAcceptChanges: !!provider.acceptChanges,
supportsDrag: !!provider.drag,
supportsOriginalResource: !!provider.getOriginalResource
});
Expand Down Expand Up @@ -217,6 +218,16 @@ export class ExtHostSCM {
return asWinJsPromise(token => provider.open(resource, token));
}

$acceptChanges(providerId: string): TPromise<void> {
const provider = this._providers[providerId];

if (!provider) {
return TPromise.as(null);
}

return asWinJsPromise(token => provider.acceptChanges(token));
}

$drag(providerId: string, fromResourceGroupId: string, fromUri: string, toResourceGroupId: string): TPromise<void> {
const provider = this._providers[providerId];

Expand Down
14 changes: 11 additions & 3 deletions src/vs/workbench/api/node/mainThreadSCM.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,14 @@ class MainThreadSCMProvider implements ISCMProvider {
return this.proxy.$open(this.id, resource.resourceGroupId, resource.uri.toString());
}

acceptChanges(): TPromise<void> {
if (!this.features.supportsAcceptChanges) {
return TPromise.as(null);
}

return this.proxy.$acceptChanges(this.id);
}

drag(from: ISCMResource, to: ISCMResourceGroup): TPromise<void> {
if (!this.features.supportsDrag) {
return TPromise.as(null);
Expand Down Expand Up @@ -125,8 +133,8 @@ export class MainThreadSCM extends MainThreadSCMShape {
super();
this.proxy = threadService.get(ExtHostContext.ExtHostSCM);

this.inputBoxListener = this.scmService.inputBoxModel.onDidChangeContent(e => {
this.proxy.$onInputBoxValueChange(this.scmService.inputBoxModel.getValue());
this.inputBoxListener = this.scmService.input.onDidChange(value => {
this.proxy.$onInputBoxValueChange(value);
});
}

Expand Down Expand Up @@ -156,7 +164,7 @@ export class MainThreadSCM extends MainThreadSCMShape {
}

$setInputBoxValue(value: string): void {
this.scmService.inputBoxModel.setValue(value);
this.scmService.input.value = value;
}

dispose(): void {
Expand Down
4 changes: 4 additions & 0 deletions src/vs/workbench/parts/git/browser/gitScm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,10 @@ export class GitSCMProvider implements IWorkbenchContribution, ISCMProvider, ITe
return TPromise.wrapError<void>('not implemented');
}

acceptChanges(): TPromise<void> {
return TPromise.wrapError<void>('not implemented');
}

drag(from: ISCMResource, to: ISCMResourceGroup): TPromise<void> {
return TPromise.wrapError<void>('not implemented');
}
Expand Down
29 changes: 17 additions & 12 deletions src/vs/workbench/parts/scm/electron-browser/media/scmViewlet.css
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,6 @@
background-position: center;
}

.scm-viewlet > .scm-editor {
padding: 5px 9px 5px 16px;
}

.scm-viewlet .monaco-list-row {
padding: 0 12px 0 20px;
line-height: 22px;
Expand Down Expand Up @@ -76,18 +72,27 @@
display: none;
}

.monaco-shell.vs .scm-viewlet > .scm-editor > .monaco-editor.focused {
outline: 1px solid rgba(0, 122, 204, 0.4);
.scm-viewlet > .scm-editor {
padding: 5px 9px 5px 16px;
}

.scm-viewlet > .scm-editor {
box-sizing: border-box;
padding: 5px 9px 5px 16px;
}

.monaco-shell.vs-dark .scm-viewlet > .scm-editor > .monaco-editor.focused {
outline: 1px solid rgba(14, 99, 156, 0.6);
.scm-viewlet > .scm-editor > .monaco-inputbox {
width: 100%;
}

.monaco-shell.hc-black .scm-viewlet > .scm-editor > .monaco-editor {
outline: 1px solid #6fc3df;
.scm-viewlet > .scm-editor > .monaco-inputbox > .wrapper > .mirror {
max-height: 134px;
}

.monaco-shell.hc-black .scm-viewlet > .scm-editor > .monaco-editor.focused {
outline: 2px solid #f38518;
.scm-viewlet > .scm-editor > .monaco-inputbox > .wrapper > textarea.input {
min-height: 26px;
}

.scm-viewlet > .scm-editor.scroll > .monaco-inputbox > .wrapper > textarea.input {
overflow-y: scroll;
}
145 changes: 0 additions & 145 deletions src/vs/workbench/parts/scm/electron-browser/scmEditor.ts

This file was deleted.

Loading

0 comments on commit ca1deee

Please sign in to comment.