mirror of
https://github.com/Microsoft/vscode
synced 2024-10-05 19:02:54 +00:00
parent
4157a8d7f0
commit
96151fb331
|
@ -501,7 +501,11 @@ class ProfileWidget extends Disposable {
|
|||
type: MessageType.ERROR
|
||||
};
|
||||
}
|
||||
const initialName = this._profileElement.value?.element instanceof UserDataProfileElement ? this._profileElement.value.element.profile.name : undefined;
|
||||
if (this._profileElement.value?.element.disabled) {
|
||||
return null;
|
||||
}
|
||||
const initialName = this._profileElement.value?.element.getInitialName();
|
||||
value = value.trim();
|
||||
if (initialName !== value && this.userDataProfilesService.profiles.some(p => p.name === value)) {
|
||||
return {
|
||||
content: localize('profileExists', "Profile with name {0} already exists.", value),
|
||||
|
@ -778,6 +782,7 @@ class ProfileWidget extends Disposable {
|
|||
private renderProfileElement(profileElement: AbstractUserDataProfileElement): void {
|
||||
this.profileTitle.textContent = profileElement.name;
|
||||
this.nameInput.value = profileElement.name;
|
||||
this.nameInput.validate();
|
||||
if (profileElement.disabled) {
|
||||
this.nameInput.disable();
|
||||
} else {
|
||||
|
|
|
@ -104,9 +104,10 @@ export abstract class AbstractUserDataProfileElement extends Disposable {
|
|||
|
||||
private _name = '';
|
||||
get name(): string { return this._name; }
|
||||
set name(label: string) {
|
||||
if (this._name !== label) {
|
||||
this._name = label;
|
||||
set name(name: string) {
|
||||
name = name.trim();
|
||||
if (this._name !== name) {
|
||||
this._name = name;
|
||||
this._onDidChange.fire({ name: true });
|
||||
}
|
||||
}
|
||||
|
@ -263,7 +264,7 @@ export abstract class AbstractUserDataProfileElement extends Disposable {
|
|||
|
||||
}
|
||||
|
||||
protected getInitialName(): string {
|
||||
getInitialName(): string {
|
||||
return '';
|
||||
}
|
||||
|
||||
|
@ -380,7 +381,7 @@ export class UserDataProfileElement extends AbstractUserDataProfileElement {
|
|||
return this.getChildrenFromProfile(this.profile, resourceType);
|
||||
}
|
||||
|
||||
protected override getInitialName(): string {
|
||||
override getInitialName(): string {
|
||||
return this.profile.name;
|
||||
}
|
||||
|
||||
|
@ -614,7 +615,7 @@ export class NewProfileElement extends AbstractUserDataProfileElement {
|
|||
return [];
|
||||
}
|
||||
|
||||
protected override getInitialName(): string {
|
||||
override getInitialName(): string {
|
||||
return this.previewProfile?.name ?? '';
|
||||
}
|
||||
|
||||
|
@ -832,9 +833,8 @@ export class UserDataProfilesEditorModel extends EditorModel {
|
|||
if (e.preview) {
|
||||
previewProfileAction.checked = !!this.newProfileElement?.previewProfile;
|
||||
}
|
||||
if (e.disabled) {
|
||||
previewProfileAction.enabled = !this.newProfileElement?.disabled;
|
||||
createAction.enabled = !this.newProfileElement?.disabled;
|
||||
if (e.disabled || e.message) {
|
||||
previewProfileAction.enabled = createAction.enabled = !this.newProfileElement?.disabled && !this.newProfileElement?.message;
|
||||
}
|
||||
}));
|
||||
this._profiles.push([this.newProfileElement, disposables]);
|
||||
|
|
Loading…
Reference in a new issue