From 5d7e9857caf603e2b0c81e38d72acc4796c2ba24 Mon Sep 17 00:00:00 2001 From: SirBlob Date: Sun, 1 Nov 2026 01:38:51 -0500 Subject: [PATCH] Open startup terminal as a floating window --- src/lib/desktop/windows.svelte.ts | 3 ++- src/routes/+layout.svelte | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/lib/desktop/windows.svelte.ts b/src/lib/desktop/windows.svelte.ts index 861fb06..c617684 100644 --- a/src/lib/desktop/windows.svelte.ts +++ b/src/lib/desktop/windows.svelte.ts @@ -52,9 +52,10 @@ class WindowManager { return id in this.floatingRects; } - openTerminal(startupCommand = '') { + openTerminal(startupCommand = '', options: { floating?: boolean } = {}) { const terminal = { id: `kitty-${this.nextTerminalNumber++}`, startupCommand }; this.terminals.push(terminal); + if (options.floating) this.floatingRects[terminal.id] = null; this.focus(terminal.id); } diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index a6efea6..d84ccb9 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -28,7 +28,7 @@ onMount(() => { themeState.restore(); const isWideScreen = window.innerWidth >= 768; - if (!pageOpen && isWideScreen && desktop.startupCommand) windowManager.openTerminal(desktop.startupCommand); + if (!pageOpen && isWideScreen && desktop.startupCommand) windowManager.openTerminal(desktop.startupCommand, { floating: true }); window.addEventListener('click', handleImageClick, true); return () => window.removeEventListener('click', handleImageClick, true); });