diff --git a/app/lib/window.ts b/app/lib/window.ts index 46234440..38ad6c86 100644 --- a/app/lib/window.ts +++ b/app/lib/window.ts @@ -103,6 +103,12 @@ export class Window { } }) + this.window.on('blur',() => { + if (this.configStore.appearance?.dockHideOnBlur) { + this.hide() + } + }) + this.window.loadURL(`file://${app.getAppPath()}/dist/index.html?${this.window.id}`, { extraHeaders: 'pragma: no-cache\n' }) if (process.platform !== 'darwin') { diff --git a/terminus-core/src/configDefaults.yaml b/terminus-core/src/configDefaults.yaml index 3cba8f8a..ed73a563 100644 --- a/terminus-core/src/configDefaults.yaml +++ b/terminus-core/src/configDefaults.yaml @@ -2,6 +2,7 @@ appearance: dock: off dockScreen: current dockFill: 0.5 + dockHideOnBlur: false tabsLocation: top cycleTabs: true theme: Standard diff --git a/terminus-settings/src/components/settingsTab.component.pug b/terminus-settings/src/components/settingsTab.component.pug index ad0e6f60..af307345 100644 --- a/terminus-settings/src/components/settingsTab.component.pug +++ b/terminus-settings/src/components/settingsTab.component.pug @@ -219,6 +219,15 @@ ngb-tabset.vertical(type='pills', [activeId]='activeTab') step='0.01' ) + .form-line(*ngIf='config.store.appearance.dock != "off"') + .header + .title Hide dock on blur + .description Hides the docked terminal when you click away. + toggle( + [(ngModel)]='config.store.appearance.dockHideOnBlur', + (ngModelChange)='config.save(); ', + ) + .form-line .header .title Debugging