From 299ede2eb1da5b748f88015f654eccf6e9643492 Mon Sep 17 00:00:00 2001 From: pinpin Date: Mon, 16 Nov 2020 21:41:11 +0200 Subject: [PATCH 1/4] Add Hide Tab Index and Hide Tab Close Button --- .../src/components/baseTab.component.ts | 2 ++ .../src/components/tabHeader.component.pug | 4 ++-- .../src/components/tabHeader.component.ts | 13 ++++++++++++- terminus-ssh/package.json | 2 +- .../appearanceSettingsTab.component.pug | 18 ++++++++++++++++++ terminus-terminal/src/config.ts | 2 ++ 6 files changed, 37 insertions(+), 4 deletions(-) diff --git a/terminus-core/src/components/baseTab.component.ts b/terminus-core/src/components/baseTab.component.ts index fea8b950..355f8002 100644 --- a/terminus-core/src/components/baseTab.component.ts +++ b/terminus-core/src/components/baseTab.component.ts @@ -45,6 +45,8 @@ export abstract class BaseTabComponent { color: string|null = null hasFocus = false + showIndex = true + showCloseButton = true /** * Ping this if your recovery state has been changed and you want diff --git a/terminus-core/src/components/tabHeader.component.pug b/terminus-core/src/components/tabHeader.component.pug index b59dfb63..889c7ec9 100644 --- a/terminus-core/src/components/tabHeader.component.pug +++ b/terminus-core/src/components/tabHeader.component.pug @@ -1,7 +1,7 @@ .progressbar([style.width]='progress + "%"', *ngIf='progress != null') -.index( +.index(*ngIf='tab.showIndex==true', #handle, [style.background-color]='tab.color', ) {{index + 1}} .name([title]='tab.customTitle || tab.title') {{tab.customTitle || tab.title}} -button((click)='app.closeTab(tab, true)') × +button(*ngIf='tab.showCloseButton==true',(click)='app.closeTab(tab, true)') × diff --git a/terminus-core/src/components/tabHeader.component.ts b/terminus-core/src/components/tabHeader.component.ts index b617149d..9cccbf1b 100644 --- a/terminus-core/src/components/tabHeader.component.ts +++ b/terminus-core/src/components/tabHeader.component.ts @@ -9,6 +9,7 @@ import { HotkeysService } from '../services/hotkeys.service' import { ElectronService } from '../services/electron.service' import { AppService } from '../services/app.service' import { HostAppService, Platform } from '../services/hostApp.service' +import { ConfigService } from '../services/config.service' /** @hidden */ export interface SortableComponentProxy { @@ -35,8 +36,9 @@ export class TabHeaderComponent { private hostApp: HostAppService, private ngbModal: NgbModal, private hotkeys: HotkeysService, + private config: ConfigService, @Inject(SortableComponent) private parentDraggable: SortableComponentProxy, - @Optional() @Inject(TabContextMenuItemProvider) protected contextMenuProviders: TabContextMenuItemProvider[], + @Optional() @Inject(TabContextMenuItemProvider) protected contextMenuProviders: TabContextMenuItemProvider[], ) { this.hotkeys.matchedHotkey.subscribe((hotkey) => { if (this.app.activeTab === this.tab) { @@ -52,6 +54,15 @@ export class TabHeaderComponent { this.tab.progress$.subscribe(progress => { this.progress = progress }) + + if (this.config.store.terminal.disableTabIndex) { + this.tab.showIndex = false; + } + + if (this.config.store.terminal.disableCloseButton) { + this.tab.showCloseButton = false; + } + } ngAfterViewInit () { diff --git a/terminus-ssh/package.json b/terminus-ssh/package.json index 481b8097..39a6357f 100644 --- a/terminus-ssh/package.json +++ b/terminus-ssh/package.json @@ -10,7 +10,7 @@ "scripts": { "build": "webpack --progress --color", "watch": "webpack --progress --color --watch", - "postinstall": "xcopy /i node_modules\\ssh2\\util\\pagent.exe util\\" + "postinstall:win32": "xcopy /i node_modules\\ssh2\\util\\pagent.exe util\\" }, "files": [ "dist", diff --git a/terminus-terminal/src/components/appearanceSettingsTab.component.pug b/terminus-terminal/src/components/appearanceSettingsTab.component.pug index 90eb2c6e..1717dea3 100644 --- a/terminus-terminal/src/components/appearanceSettingsTab.component.pug +++ b/terminus-terminal/src/components/appearanceSettingsTab.component.pug @@ -109,6 +109,24 @@ h3.mb-3 Appearance (ngModelChange)='config.save()', ) +.form-line + .header + .title Disable Tab Index + + toggle( + [(ngModel)]='config.store.terminal.disableTabIndex', + (ngModelChange)='config.save()', + ) + +.form-line + .header + .title Disable Tab Close Button + + toggle( + [(ngModel)]='config.store.terminal.disableCloseButton', + (ngModelChange)='config.save()', + ) + .form-line .header .title Fallback font diff --git a/terminus-terminal/src/config.ts b/terminus-terminal/src/config.ts index fc05958e..5983266f 100644 --- a/terminus-terminal/src/config.ts +++ b/terminus-terminal/src/config.ts @@ -23,6 +23,8 @@ export class TerminalConfigProvider extends ConfigProvider { ligatures: false, cursor: 'block', cursorBlink: true, + disableTabIndex: false, + disableCloseButton: false, customShell: '', rightClick: 'menu', pasteOnMiddleClick: true, From 3931e8088e51d6d8c8d545e943706c2c1061f21a Mon Sep 17 00:00:00 2001 From: pinpin Date: Mon, 16 Nov 2020 21:44:20 +0200 Subject: [PATCH 2/4] revert version of node --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index cd7a11d4..e8dbc628 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,5 @@ language: node_js -node_js: 11 +node_js: 10 stages: - Build From 17cafbfa5237f7dd568f41836b328fa313fdb5f6 Mon Sep 17 00:00:00 2001 From: pinpin Date: Mon, 16 Nov 2020 22:19:44 +0200 Subject: [PATCH 3/4] add restart prompt --- .../src/components/appearanceSettingsTab.component.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/terminus-terminal/src/components/appearanceSettingsTab.component.pug b/terminus-terminal/src/components/appearanceSettingsTab.component.pug index 1717dea3..aeda0d5c 100644 --- a/terminus-terminal/src/components/appearanceSettingsTab.component.pug +++ b/terminus-terminal/src/components/appearanceSettingsTab.component.pug @@ -115,7 +115,7 @@ h3.mb-3 Appearance toggle( [(ngModel)]='config.store.terminal.disableTabIndex', - (ngModelChange)='config.save()', + (ngModelChange)='config.save(); config.requestRestart()', ) .form-line @@ -124,7 +124,7 @@ h3.mb-3 Appearance toggle( [(ngModel)]='config.store.terminal.disableCloseButton', - (ngModelChange)='config.save()', + (ngModelChange)='config.save(); config.requestRestart()', ) .form-line From 37cc37650e63668b9a7eb5529c6e49d327f39d72 Mon Sep 17 00:00:00 2001 From: pinpin Date: Tue, 17 Nov 2020 09:14:05 +0200 Subject: [PATCH 4/4] Fixes based on PR reviews --- terminus-core/src/components/baseTab.component.ts | 2 -- .../src/components/tabHeader.component.pug | 4 ++-- terminus-core/src/components/tabHeader.component.ts | 13 ++----------- .../components/appearanceSettingsTab.component.pug | 8 ++++---- 4 files changed, 8 insertions(+), 19 deletions(-) diff --git a/terminus-core/src/components/baseTab.component.ts b/terminus-core/src/components/baseTab.component.ts index 355f8002..fea8b950 100644 --- a/terminus-core/src/components/baseTab.component.ts +++ b/terminus-core/src/components/baseTab.component.ts @@ -45,8 +45,6 @@ export abstract class BaseTabComponent { color: string|null = null hasFocus = false - showIndex = true - showCloseButton = true /** * Ping this if your recovery state has been changed and you want diff --git a/terminus-core/src/components/tabHeader.component.pug b/terminus-core/src/components/tabHeader.component.pug index 889c7ec9..676a495a 100644 --- a/terminus-core/src/components/tabHeader.component.pug +++ b/terminus-core/src/components/tabHeader.component.pug @@ -1,7 +1,7 @@ .progressbar([style.width]='progress + "%"', *ngIf='progress != null') -.index(*ngIf='tab.showIndex==true', +.index(*ngIf='!config.store.terminal.disableTabIndex', #handle, [style.background-color]='tab.color', ) {{index + 1}} .name([title]='tab.customTitle || tab.title') {{tab.customTitle || tab.title}} -button(*ngIf='tab.showCloseButton==true',(click)='app.closeTab(tab, true)') × +button(*ngIf='!config.store.terminal.disableCloseButton',(click)='app.closeTab(tab, true)') × diff --git a/terminus-core/src/components/tabHeader.component.ts b/terminus-core/src/components/tabHeader.component.ts index 9cccbf1b..3df6a932 100644 --- a/terminus-core/src/components/tabHeader.component.ts +++ b/terminus-core/src/components/tabHeader.component.ts @@ -32,13 +32,13 @@ export class TabHeaderComponent { private constructor ( public app: AppService, + public config: ConfigService, private electron: ElectronService, private hostApp: HostAppService, private ngbModal: NgbModal, private hotkeys: HotkeysService, - private config: ConfigService, @Inject(SortableComponent) private parentDraggable: SortableComponentProxy, - @Optional() @Inject(TabContextMenuItemProvider) protected contextMenuProviders: TabContextMenuItemProvider[], + @Optional() @Inject(TabContextMenuItemProvider) protected contextMenuProviders: TabContextMenuItemProvider[], ) { this.hotkeys.matchedHotkey.subscribe((hotkey) => { if (this.app.activeTab === this.tab) { @@ -54,15 +54,6 @@ export class TabHeaderComponent { this.tab.progress$.subscribe(progress => { this.progress = progress }) - - if (this.config.store.terminal.disableTabIndex) { - this.tab.showIndex = false; - } - - if (this.config.store.terminal.disableCloseButton) { - this.tab.showCloseButton = false; - } - } ngAfterViewInit () { diff --git a/terminus-terminal/src/components/appearanceSettingsTab.component.pug b/terminus-terminal/src/components/appearanceSettingsTab.component.pug index aeda0d5c..d4b7c5a9 100644 --- a/terminus-terminal/src/components/appearanceSettingsTab.component.pug +++ b/terminus-terminal/src/components/appearanceSettingsTab.component.pug @@ -111,20 +111,20 @@ h3.mb-3 Appearance .form-line .header - .title Disable Tab Index + .title Disable tab index toggle( [(ngModel)]='config.store.terminal.disableTabIndex', - (ngModelChange)='config.save(); config.requestRestart()', + (ngModelChange)='config.save();', ) .form-line .header - .title Disable Tab Close Button + .title Disable tab close button toggle( [(ngModel)]='config.store.terminal.disableCloseButton', - (ngModelChange)='config.save(); config.requestRestart()', + (ngModelChange)='config.save();', ) .form-line