Browse Source

Merge pull request #9082 from Ranhiru/fix-not-showing-custom-profiles-in-settings

Eugene 2 years ago
parent
commit
e68bd6c746

+ 10 - 8
tabby-settings/src/components/profilesSettingsTab.component.pug

@@ -12,14 +12,16 @@ ul.nav-tabs(ngbNav, #nav='ngbNav')
                     [(ngModel)]='config.store.terminal.profile',
                     (ngModelChange)='config.save()',
                 )
-                    option(
-                        *ngFor='let profile of profiles',
-                        [ngValue]='profile.id'
-                    ) {{profile.name}}
-                    option(
-                        *ngFor='let profile of builtinProfiles',
-                        [ngValue]='profile.id'
-                    ) {{profile.name}}
+                    optgroup([label]='"Custom Profiles"|translate',  *ngIf='customProfiles?.length > 0')
+                        option(
+                            *ngFor='let profile of customProfiles',
+                            [ngValue]='profile.id'
+                        ) {{profile.name}}
+                    optgroup([label]='"Built-in Profiles"|translate')
+                        option(
+                            *ngFor='let profile of builtinProfiles',
+                            [ngValue]='profile.id'
+                        ) {{profile.name}}
 
             .d-flex.mb-3
                 .input-group

+ 2 - 0
tabby-settings/src/components/profilesSettingsTab.component.ts

@@ -21,6 +21,7 @@ interface CollapsableProfileGroup extends ProfileGroup {
 export class ProfilesSettingsTabComponent extends BaseComponent {
     builtinProfiles: PartialProfile<Profile>[] = []
     templateProfiles: PartialProfile<Profile>[] = []
+    customProfiles: PartialProfile<Profile>[] = []
     profileGroups: PartialProfileGroup<CollapsableProfileGroup>[]
     filter = ''
     Platform = Platform
@@ -42,6 +43,7 @@ export class ProfilesSettingsTabComponent extends BaseComponent {
     async ngOnInit (): Promise<void> {
         this.refresh()
         this.builtinProfiles = (await this.profilesService.getProfiles()).filter(x => x.isBuiltin)
+        this.customProfiles = (await this.profilesService.getProfiles()).filter(x => !x.isBuiltin)
         this.templateProfiles = this.builtinProfiles.filter(x => x.isTemplate)
         this.builtinProfiles = this.builtinProfiles.filter(x => !x.isTemplate)
         this.refresh()