mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-28 12:33:35 +01:00
SCM - Add proposal for inputBox action button (#196121)
* SCM - Add proposal for inputBox action button * More reliable fix for overlapping
This commit is contained in:
@@ -12,13 +12,14 @@ import { Git } from './git';
|
||||
import * as path from 'path';
|
||||
import * as fs from 'fs';
|
||||
import { fromGitUri } from './uri';
|
||||
import { APIState as State, CredentialsProvider, PushErrorHandler, PublishEvent, RemoteSourcePublisher, PostCommitCommandsProvider, BranchProtectionProvider } from './api/git';
|
||||
import { APIState as State, CredentialsProvider, PushErrorHandler, PublishEvent, RemoteSourcePublisher, PostCommitCommandsProvider, BranchProtectionProvider, CommitMessageProvider } from './api/git';
|
||||
import { Askpass } from './askpass';
|
||||
import { IPushErrorHandlerRegistry } from './pushError';
|
||||
import { ApiRepository } from './api/api1';
|
||||
import { IRemoteSourcePublisherRegistry } from './remotePublisher';
|
||||
import { IPostCommitCommandsProviderRegistry } from './postCommitCommands';
|
||||
import { IBranchProtectionProviderRegistry } from './branchProtection';
|
||||
import { ICommitMessageProviderRegistry } from './commitMessageProvider';
|
||||
|
||||
class RepositoryPick implements QuickPickItem {
|
||||
@memoize get label(): string {
|
||||
@@ -170,7 +171,7 @@ class UnsafeRepositoriesManager {
|
||||
}
|
||||
}
|
||||
|
||||
export class Model implements IRepositoryResolver, IBranchProtectionProviderRegistry, IRemoteSourcePublisherRegistry, IPostCommitCommandsProviderRegistry, IPushErrorHandlerRegistry {
|
||||
export class Model implements IRepositoryResolver, IBranchProtectionProviderRegistry, ICommitMessageProviderRegistry, IRemoteSourcePublisherRegistry, IPostCommitCommandsProviderRegistry, IPushErrorHandlerRegistry {
|
||||
|
||||
private _onDidOpenRepository = new EventEmitter<Repository>();
|
||||
readonly onDidOpenRepository: Event<Repository> = this._onDidOpenRepository.event;
|
||||
@@ -237,6 +238,14 @@ export class Model implements IRepositoryResolver, IBranchProtectionProviderRegi
|
||||
|
||||
private pushErrorHandlers = new Set<PushErrorHandler>();
|
||||
|
||||
private _commitMessageProvider: CommitMessageProvider | undefined;
|
||||
get commitMessageProvider(): CommitMessageProvider | undefined {
|
||||
return this._commitMessageProvider;
|
||||
}
|
||||
|
||||
private _onDidChangeCommitMessageProvider = new EventEmitter<void>();
|
||||
readonly onDidChangeCommitMessageProvider = this._onDidChangeCommitMessageProvider.event;
|
||||
|
||||
private _unsafeRepositoriesManager: UnsafeRepositoriesManager;
|
||||
get unsafeRepositories(): string[] {
|
||||
return this._unsafeRepositoriesManager.repositories;
|
||||
@@ -578,7 +587,7 @@ export class Model implements IRepositoryResolver, IBranchProtectionProviderRegi
|
||||
|
||||
// Open repository
|
||||
const [dotGit, repositoryRootRealPath] = await Promise.all([this.git.getRepositoryDotGit(repositoryRoot), this.getRepositoryRootRealPath(repositoryRoot)]);
|
||||
const repository = new Repository(this.git.open(repositoryRoot, repositoryRootRealPath, dotGit, this.logger), this, this, this, this, this, this.globalState, this.logger, this.telemetryReporter);
|
||||
const repository = new Repository(this.git.open(repositoryRoot, repositoryRootRealPath, dotGit, this.logger), this, this, this, this, this, this, this.globalState, this.logger, this.telemetryReporter);
|
||||
|
||||
this.open(repository);
|
||||
this._closedRepositoriesManager.deleteRepository(repository.root);
|
||||
@@ -939,6 +948,16 @@ export class Model implements IRepositoryResolver, IBranchProtectionProviderRegi
|
||||
return toDisposable(() => this.pushErrorHandlers.delete(handler));
|
||||
}
|
||||
|
||||
registerCommitMessageProvider(provider: CommitMessageProvider): Disposable {
|
||||
this._commitMessageProvider = provider;
|
||||
this._onDidChangeCommitMessageProvider.fire();
|
||||
|
||||
return toDisposable(() => {
|
||||
this._commitMessageProvider = undefined;
|
||||
this._onDidChangeCommitMessageProvider.fire();
|
||||
});
|
||||
}
|
||||
|
||||
getPushErrorHandlers(): PushErrorHandler[] {
|
||||
return [...this.pushErrorHandlers];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user