Skip to content

Commit 2a263ba

Browse files
committed
label: getUriLabel get an option bag since it is cleaner
1 parent ff1aedd commit 2a263ba

19 files changed

Lines changed: 34 additions & 34 deletions

File tree

src/vs/editor/contrib/referenceSearch/referencesWidget.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,7 @@ class FileReferencesTemplate {
318318

319319
set(element: FileReferences) {
320320
let parent = dirname(element.uri);
321-
this.file.setValue(getBaseLabel(element.uri), parent ? this._uriLabel.getUriLabel(parent, true) : undefined, { title: this._uriLabel.getUriLabel(element.uri) });
321+
this.file.setValue(getBaseLabel(element.uri), parent ? this._uriLabel.getUriLabel(parent, { relative: true }) : undefined, { title: this._uriLabel.getUriLabel(element.uri) });
322322
const len = element.children.length;
323323
this.badge.setCount(len);
324324
if (element.failure) {
@@ -771,7 +771,7 @@ export class ReferenceWidget extends PeekViewWidget {
771771

772772
// Update widget header
773773
if (reference.uri.scheme !== Schemas.inMemory) {
774-
this.setTitle(basenameOrAuthority(reference.uri), this._uriLabel.getUriLabel(dirname(reference.uri), false));
774+
this.setTitle(basenameOrAuthority(reference.uri), this._uriLabel.getUriLabel(dirname(reference.uri)));
775775
} else {
776776
this.setTitle(nls.localize('peekView.alternateTitle', "References"));
777777
}

src/vs/editor/standalone/browser/simpleServices.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -602,7 +602,7 @@ export class SimpleUriLabelService implements ILabelService {
602602
private readonly _onDidRegisterFormatter: Emitter<RegisterFormatterEvent> = new Emitter<RegisterFormatterEvent>();
603603
public readonly onDidRegisterFormatter: Event<RegisterFormatterEvent> = this._onDidRegisterFormatter.event;
604604

605-
public getUriLabel(resource: URI, relative?: boolean): string {
605+
public getUriLabel(resource: URI, options?: { relative?: boolean, forceNoTildify?: boolean }): string {
606606
if (resource.scheme === 'file') {
607607
return resource.fsPath;
608608
}

src/vs/platform/label/common/label.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export interface RegisterFormatterEvent {
2626

2727
export interface ILabelService {
2828
_serviceBrand: any;
29-
getUriLabel(resource: URI, relative?: boolean, forceNoTildify?: boolean): string;
29+
getUriLabel(resource: URI, options?: { relative?: boolean, forceNoTildify?: boolean }): string;
3030
getWorkspaceLabel(workspace: (IWorkspaceIdentifier | ISingleFolderWorkspaceIdentifier | IWorkspace), options?: { verbose: boolean }): string;
3131
registerFormatter(schema: string, formatter: LabelRules): IDisposable;
3232
onDidRegisterFormatter: Event<RegisterFormatterEvent>;
@@ -67,24 +67,24 @@ export class LabelService implements ILabelService {
6767
return this._onDidRegisterFormatter.event;
6868
}
6969

70-
getUriLabel(resource: URI, relative?: boolean, forceNoTildify?: boolean): string {
70+
getUriLabel(resource: URI, options: { relative?: boolean, forceNoTildify?: boolean } = {}): string {
7171
if (!resource) {
7272
return undefined;
7373
}
7474
const formatter = this.formatters.get(resource.scheme);
7575
if (!formatter) {
76-
return getPathLabel(resource.path, this.environmentService, relative ? this.contextService : undefined);
76+
return getPathLabel(resource.path, this.environmentService, options.relative ? this.contextService : undefined);
7777
}
7878

79-
if (relative) {
79+
if (options.relative) {
8080
const baseResource = this.contextService && this.contextService.getWorkspaceFolder(resource);
8181
if (baseResource) {
8282
let relativeLabel: string;
8383
if (isEqual(baseResource.uri, resource, !isLinux)) {
8484
relativeLabel = ''; // no label if resources are identical
8585
} else {
86-
const baseResourceLabel = this.formatUri(baseResource.uri, formatter, forceNoTildify);
87-
relativeLabel = ltrim(this.formatUri(resource, formatter, forceNoTildify).substring(baseResourceLabel.length), formatter.uri.separator);
86+
const baseResourceLabel = this.formatUri(baseResource.uri, formatter, options.forceNoTildify);
87+
relativeLabel = ltrim(this.formatUri(resource, formatter, options.forceNoTildify).substring(baseResourceLabel.length), formatter.uri.separator);
8888
}
8989

9090
const hasMultipleRoots = this.contextService.getWorkspace().folders.length > 1;
@@ -97,7 +97,7 @@ export class LabelService implements ILabelService {
9797
}
9898
}
9999

100-
return this.formatUri(resource, formatter, forceNoTildify);
100+
return this.formatUri(resource, formatter, options.forceNoTildify);
101101
}
102102

103103
getWorkspaceLabel(workspace: (IWorkspaceIdentifier | ISingleFolderWorkspaceIdentifier | IWorkspace), options?: { verbose: boolean }): string {

src/vs/platform/label/test/label.test.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,11 @@ suite('URI Label', () => {
3131
});
3232

3333
const uri1 = TestWorkspace.folders[0].uri.with({ path: TestWorkspace.folders[0].uri.path.concat('/a/b/c/d') });
34-
assert.equal(labelService.getUriLabel(uri1, true), isWindows ? 'a\\b\\c\\d' : 'a/b/c/d');
35-
assert.equal(labelService.getUriLabel(uri1, false), isWindows ? 'C:\\testWorkspace\\a\\b\\c\\d' : '/testWorkspace/a/b/c/d');
34+
assert.equal(labelService.getUriLabel(uri1, { relative: true }), isWindows ? 'a\\b\\c\\d' : 'a/b/c/d');
35+
assert.equal(labelService.getUriLabel(uri1, { relative: false }), isWindows ? 'C:\\testWorkspace\\a\\b\\c\\d' : '/testWorkspace/a/b/c/d');
3636

3737
const uri2 = URI.file('c:\\1/2/3');
38-
assert.equal(labelService.getUriLabel(uri2, false), isWindows ? 'C:\\1\\2\\3' : '/c:\\1/2/3');
38+
assert.equal(labelService.getUriLabel(uri2, { relative: false }), isWindows ? 'C:\\1\\2\\3' : '/c:\\1/2/3');
3939
});
4040

4141
test('custom scheme', function () {
@@ -49,6 +49,6 @@ suite('URI Label', () => {
4949
});
5050

5151
const uri1 = URI.parse('vscode://microsoft.com/1/2/3/4/5');
52-
assert.equal(labelService.getUriLabel(uri1, false), 'LABEL//1/2/3/4/5/microsoft.com/END');
52+
assert.equal(labelService.getUriLabel(uri1, { relative: false }), 'LABEL//1/2/3/4/5/microsoft.com/END');
5353
});
5454
});

src/vs/workbench/browser/actions/workspaceCommands.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ CommandsRegistry.registerCommand(PICK_WORKSPACE_FOLDER_COMMAND_ID, function (acc
177177
const folderPicks = folders.map(folder => {
178178
return {
179179
label: folder.name,
180-
description: labelService.getUriLabel(resources.dirname(folder.uri), true),
180+
description: labelService.getUriLabel(resources.dirname(folder.uri), { relative: true }),
181181
folder,
182182
iconClasses: getIconClasses(modelService, modeService, folder.uri, FileKind.ROOT_FOLDER)
183183
} as IQuickPickItem;

src/vs/workbench/browser/labels.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -302,7 +302,7 @@ export class FileLabel extends ResourceLabel {
302302
let description: string;
303303
const hidePath = (options && options.hidePath) || (resource.scheme === Schemas.untitled && !this.untitledEditorService.hasAssociatedFilePath(resource));
304304
if (!hidePath) {
305-
description = this.labelService.getUriLabel(resources.dirname(resource), true);
305+
description = this.labelService.getUriLabel(resources.dirname(resource), { relative: true });
306306
}
307307

308308
this.setLabel({ resource, name, description }, options);

src/vs/workbench/browser/parts/quickopen/quickOpenController.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -727,7 +727,7 @@ export class EditorHistoryEntry extends EditorQuickOpenEntry {
727727
const resourceInput = input as IResourceInput;
728728
this.resource = resourceInput.resource;
729729
this.label = resources.basenameOrAuthority(resourceInput.resource);
730-
this.description = labelService.getUriLabel(resources.dirname(this.resource), true);
730+
this.description = labelService.getUriLabel(resources.dirname(this.resource), { relative: true });
731731
this.dirty = this.resource && this.textFileService.isDirty(this.resource);
732732

733733
if (this.dirty && this.textFileService.getAutoSaveMode() === AutoSaveMode.AFTER_SHORT_DELAY) {

src/vs/workbench/common/editor/untitledEditorInput.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ export class UntitledEditorInput extends EditorInput implements IEncodingSupport
8484

8585
@memoize
8686
private get mediumDescription(): string {
87-
return this.labelService.getUriLabel(resources.dirname(this.resource), true);
87+
return this.labelService.getUriLabel(resources.dirname(this.resource), { relative: true });
8888
}
8989

9090
@memoize
@@ -121,7 +121,7 @@ export class UntitledEditorInput extends EditorInput implements IEncodingSupport
121121

122122
@memoize
123123
private get mediumTitle(): string {
124-
return this.labelService.getUriLabel(this.resource, true);
124+
return this.labelService.getUriLabel(this.resource, { relative: true });
125125
}
126126

127127
@memoize

src/vs/workbench/parts/debug/browser/breakpointsView.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -337,7 +337,7 @@ class BreakpointsRenderer implements IRenderer<IBreakpoint, IBreakpointTemplateD
337337
if (breakpoint.column) {
338338
data.lineNumber.textContent += `:${breakpoint.column}`;
339339
}
340-
data.filePath.textContent = this.labelService.getUriLabel(resources.dirname(breakpoint.uri), true);
340+
data.filePath.textContent = this.labelService.getUriLabel(resources.dirname(breakpoint.uri), { relative: true });
341341
data.checkbox.checked = breakpoint.enabled;
342342

343343
const { message, className } = getBreakpointMessageAndClassName(this.debugService, breakpoint);

src/vs/workbench/parts/files/common/editors/fileEditorInput.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -137,12 +137,12 @@ export class FileEditorInput extends EditorInput implements IFileEditorInput {
137137

138138
@memoize
139139
private get mediumDescription(): string {
140-
return this.labelService.getUriLabel(resources.dirname(this.resource), true);
140+
return this.labelService.getUriLabel(resources.dirname(this.resource), { relative: true });
141141
}
142142

143143
@memoize
144144
private get longDescription(): string {
145-
return this.labelService.getUriLabel(resources.dirname(this.resource), true);
145+
return this.labelService.getUriLabel(resources.dirname(this.resource), { relative: true });
146146
}
147147

148148
getDescription(verbosity: Verbosity = Verbosity.MEDIUM): string {
@@ -170,7 +170,7 @@ export class FileEditorInput extends EditorInput implements IFileEditorInput {
170170

171171
@memoize
172172
private get mediumTitle(): string {
173-
return this.labelService.getUriLabel(this.resource, true);
173+
return this.labelService.getUriLabel(this.resource, { relative: true });
174174
}
175175

176176
@memoize

0 commit comments

Comments
 (0)