Skip to content

Commit 8cb6281

Browse files
authored
Git gutter not shown in workspace with multiple folders (microsoft#176754) (microsoft#176952)
* Git gutter not shown in workspace with multiple folders Fixes microsoft#176738 * Use UriIdentityService
1 parent 3486ed4 commit 8cb6281

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

src/vs/workbench/api/browser/mainThreadSCM.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -286,7 +286,7 @@ class MainThreadSCMProvider implements ISCMProvider, QuickDiffProvider {
286286
}
287287

288288
dispose(): void {
289-
289+
this._quickDiff?.dispose();
290290
}
291291
}
292292

src/vs/workbench/contrib/scm/common/quickDiffService.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import { isEqualOrParent } from 'vs/base/common/resources';
1010
import { score } from 'vs/editor/common/languageSelector';
1111
import { Emitter } from 'vs/base/common/event';
1212
import { withNullAsUndefined } from 'vs/base/common/types';
13+
import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity';
1314

1415
function createProviderComparer(uri: URI): (a: QuickDiffProvider, b: QuickDiffProvider) => number {
1516
return (a, b) => {
@@ -43,6 +44,10 @@ export class QuickDiffService extends Disposable implements IQuickDiffService {
4344
private readonly _onDidChangeQuickDiffProviders = this._register(new Emitter<void>());
4445
readonly onDidChangeQuickDiffProviders = this._onDidChangeQuickDiffProviders.event;
4546

47+
constructor(@IUriIdentityService private readonly uriIdentityService: IUriIdentityService) {
48+
super();
49+
}
50+
4651
addQuickDiffProvider(quickDiff: QuickDiffProvider): IDisposable {
4752
this.quickDiffProviders.add(quickDiff);
4853
this._onDidChangeQuickDiffProviders.fire();
@@ -60,7 +65,7 @@ export class QuickDiffService extends Disposable implements IQuickDiffService {
6065

6166
async getQuickDiffs(uri: URI, language: string = '', isSynchronized: boolean = false): Promise<QuickDiff[]> {
6267
const providers = Array.from(this.quickDiffProviders)
63-
.filter(provider => !provider.rootUri || isEqualOrParent(uri, provider.rootUri))
68+
.filter(provider => !provider.rootUri || this.uriIdentityService.extUri.isEqualOrParent(uri, provider.rootUri))
6469
.sort(createProviderComparer(uri));
6570

6671
const diffs = await Promise.all(providers.map(async provider => {

0 commit comments

Comments
 (0)