From 68c400f6c4d13d683dedad96668834cc35553ea8 Mon Sep 17 00:00:00 2001 From: Andrew Zambazos <62979495+Bobbybear007@users.noreply.github.com> Date: Tue, 12 May 2026 22:36:39 +1200 Subject: [PATCH] Custom icon and task bar added --- frontend/assets/icons/GitpubDesktop-Icon.ico | Bin 0 -> 58270 bytes frontend/css/components.css | 40 +++++++++++++ frontend/js/app.js | 58 +++++++++++++++++++ src-tauri/capabilities/default.json | 7 +++ src-tauri/tauri.conf.json | 5 +- 5 files changed, 108 insertions(+), 2 deletions(-) create mode 100644 frontend/assets/icons/GitpubDesktop-Icon.ico diff --git a/frontend/assets/icons/GitpubDesktop-Icon.ico b/frontend/assets/icons/GitpubDesktop-Icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..734b08a39a7f14317368bf94455a10c98c8fb3c7 GIT binary patch literal 58270 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%0DMaJ2E} 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 z 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 F{{k)B@eBX} literal 0 HcmV?d00001 diff --git a/frontend/css/components.css b/frontend/css/components.css index 5b489a1..ffcf13b 100644 --- a/frontend/css/components.css +++ b/frontend/css/components.css @@ -174,7 +174,15 @@ flex: 1; display: flex; align-items: center; + gap: 14px; padding: 0 18px; + min-width: 0; +} + +.gd-toolbar-drag-space { + align-self: stretch; + flex: 1; + min-width: 40px; } /* Right section – view toggle + utility menu */ @@ -187,6 +195,38 @@ flex-shrink: 0; } +.gd-window-controls { + display: flex; + align-items: stretch; + flex-shrink: 0; + border-left: 1px solid rgba(229, 161, 62, 0.12); +} + +.gd-window-control { + display: inline-flex; + align-items: center; + justify-content: center; + width: 46px; + height: 100%; + padding: 0; + border: 0; + border-radius: 0; + background: transparent; + color: var(--text-muted); + cursor: pointer; + transition: background 0.12s ease, color 0.12s ease; +} + +.gd-window-control:hover { + background: rgba(229, 161, 62, 0.1); + color: var(--text-main); +} + +.gd-window-close:hover { + background: var(--danger); + color: #ffffff; +} + .gd-external-actions { display: flex; align-items: center; diff --git a/frontend/js/app.js b/frontend/js/app.js index 22bb565..84a3fb4 100644 --- a/frontend/js/app.js +++ b/frontend/js/app.js @@ -66,6 +66,53 @@ const PUSH_ICON = ``; const EXPLORER_ICON = ``; const EDITOR_ICON = ``; +const WINDOW_MINIMIZE_ICON = ``; +const WINDOW_MAXIMIZE_ICON = ``; +const WINDOW_CLOSE_ICON = ``; + +function currentTauriWindow() { + const tauriWindow = window.__TAURI__?.window; + if (tauriWindow?.getCurrentWindow) { + return tauriWindow.getCurrentWindow(); + } + return tauriWindow?.appWindow || null; +} + +async function handleWindowAction(action) { + const appWindow = currentTauriWindow(); + if (!appWindow) { + console.warn("Tauri window API not available"); + return; + } + + try { + if (action === "minimize") { + await appWindow.minimize(); + } else if (action === "maximize") { + const isMaximized = await appWindow.isMaximized(); + if (isMaximized) { + await appWindow.unmaximize(); + } else { + await appWindow.maximize(); + } + } else if (action === "close") { + await appWindow.close(); + } + } catch (error) { + console.error(`Unable to ${action} window:`, error); + } +} + +async function startWindowDrag() { + const appWindow = currentTauriWindow(); + if (!appWindow) return; + + try { + await appWindow.startDragging(); + } catch (error) { + console.error("Unable to start window drag:", error); + } +} function uid() { return `${Date.now()}-${Math.random().toString(16).slice(2)}`; @@ -1176,6 +1223,7 @@ function dashboardView() { ${escapeHtml(syncCfg.subLabel)} +

@@ -1229,6 +1277,11 @@ function dashboardView() {
` : ""} +
+ + + +
`; // ── Sidebar content ───────────────────────────────────────────────────── @@ -2065,6 +2118,11 @@ function bindDashboardEvents() { document.getElementById("open-file-explorer-menu-btn")?.addEventListener("click", openSelectedRepoInFileExplorer); document.getElementById("open-code-editor-btn")?.addEventListener("click", openSelectedRepoInCodeEditor); document.getElementById("open-code-editor-menu-btn")?.addEventListener("click", openSelectedRepoInCodeEditor); + document.querySelectorAll("[data-window-action]").forEach((button) => { + button.addEventListener("click", () => handleWindowAction(button.dataset.windowAction || "")); + }); + document.querySelector(".gd-toolbar-drag-space")?.addEventListener("mousedown", startWindowDrag); + document.querySelector(".gd-toolbar-drag-space")?.addEventListener("dblclick", () => handleWindowAction("maximize")); // Modal close document.getElementById("modal-close-btn")?.addEventListener("click", () => { diff --git a/src-tauri/capabilities/default.json b/src-tauri/capabilities/default.json index 01a4101..fee7e4e 100644 --- a/src-tauri/capabilities/default.json +++ b/src-tauri/capabilities/default.json @@ -5,6 +5,13 @@ "windows": ["main"], "permissions": [ "core:default", + "core:window:allow-minimize", + "core:window:allow-maximize", + "core:window:allow-unmaximize", + "core:window:allow-toggle-maximize", + "core:window:allow-close", + "core:window:allow-is-maximized", + "core:window:allow-start-dragging", "dialog:default", "opener:default" ] diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index e5f359f..2b2cac4 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -14,7 +14,8 @@ "width": 1320, "height": 860, "minWidth": 1024, - "minHeight": 680 + "minHeight": 680, + "decorations": false } ], "security": { @@ -29,7 +30,7 @@ "icons/128x128.png", "icons/128x128@2x.png", "icons/icon.icns", - "icons/icon.ico" + "../frontend/assets/icons/GitpubDesktop-Icon.ico" ] } }