From 5a87cd40053cd9c5c09dc7bef2d85777735111ae Mon Sep 17 00:00:00 2001 From: Juan Barbat Date: Sat, 31 Oct 2026 13:58:35 -0300 Subject: [PATCH] feat(herdr): show the Refactoria logo in the Herdr Desktop sidebar Add refactoria-chrome, a clone of the shipped workspace-chrome mod that draws the Refactoria beard and wordmark instead of the Herdr logo, and point the refactoria layout at it. Herdr does not load mod images through symlinks, so install.sh seeds the PNGs as copies. --- herdr/desktop/layouts/refactoria.json | 4 +- herdr/desktop/mods/refactoria-chrome/logo.png | Bin 0 -> 10232 bytes herdr/desktop/mods/refactoria-chrome/main.js | 54 ++++++++++++++++++ herdr/desktop/mods/refactoria-chrome/mod.json | 6 ++ .../mods/refactoria-chrome/wordmark.png | Bin 0 -> 28393 bytes install.sh | 7 +++ 6 files changed, 69 insertions(+), 2 deletions(-) create mode 100644 herdr/desktop/mods/refactoria-chrome/logo.png create mode 100644 herdr/desktop/mods/refactoria-chrome/main.js create mode 100644 herdr/desktop/mods/refactoria-chrome/mod.json create mode 100644 herdr/desktop/mods/refactoria-chrome/wordmark.png diff --git a/herdr/desktop/layouts/refactoria.json b/herdr/desktop/layouts/refactoria.json index 1ecdf78..dde3f35 100644 --- a/herdr/desktop/layouts/refactoria.json +++ b/herdr/desktop/layouts/refactoria.json @@ -14,7 +14,7 @@ "id": "brand", "type": "block", "content": { - "mod": "workspace-chrome" + "mod": "refactoria-chrome" }, "size": { "px": 46 @@ -53,7 +53,7 @@ "id": "sidebar-footer", "type": "block", "content": { - "mod": "workspace-chrome", + "mod": "refactoria-chrome", "props": { "footer": true } diff --git a/herdr/desktop/mods/refactoria-chrome/logo.png b/herdr/desktop/mods/refactoria-chrome/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..6904dd8e54c8435ef431da2d8cd74acf547262e6 GIT binary patch literal 10232 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 literal 0 HcmV?d00001 diff --git a/herdr/desktop/mods/refactoria-chrome/main.js b/herdr/desktop/mods/refactoria-chrome/main.js new file mode 100644 index 0000000..a2f590c --- /dev/null +++ b/herdr/desktop/mods/refactoria-chrome/main.js @@ -0,0 +1,54 @@ +// Clone of the shipped workspace-chrome mod: same header and footer, with the +// Refactoria beard and wordmark in place of the Herdr logo and name. +import { View, div, image, svg } from "gpui-kit"; +import { h_flex, v_flex } from "gpui-base"; +import { theme, run, props, window, shared, setShared, updates, layout } from "herdr"; + +function find(node, id) { + if (node?.id === id) return node; + for (const child of node?.children ?? []) { + const found = find(child, id); + if (found) return found; + } + return null; +} + +// The sidebar's rail goes by its width, not a flag: dragging its edge narrows it too. +const narrow = () => (find(layout(), "sidebar")?.size?.px ?? Infinity) < 160; + +// To the rail (on macOS wide enough for the traffic lights), or back to the width it had. +function toggleSidebar() { + const width = find(layout(), "sidebar")?.size?.px; + if (!narrow()) setShared("sidebar.width", width); + // Mods edited before the rail went by width still read the flag. + setShared("sidebar.collapsed", !narrow()); + run("layout.resize", { id: "sidebar", px: narrow() ? (shared("sidebar.width") ?? 268) : window()?.platform === "macos" ? 76 : 44 }); +} + +export default class RefactoriaChrome extends View { + button(id, label, action) { + const t = theme(); + return div().id(id).size(26).flex_none().flex().items_center().justify_center().rounded(6).text_color(t.muted).hover(s => s.bg(t.hover).text_color(t.foreground)) + .on_mouse_down("left", (_e, cx) => cx.stop_propagation()).on_click(action).child(label); + } + render() { + const t = theme(); + const collapsed = narrow(); + if (props()?.footer) { + const row = (id, icon, label, dim, action) => h_flex().id(id).h(28).px(8).gap(9).items_center().rounded(8) + .text_color(dim ? t.dim : t.muted).hover(s => s.bg(t.hover).text_color(t.foreground)).cursor_pointer() + .on_click(action).child(svg(`mods/workspace-chrome/${icon}.svg`).size(14)) + .when(!collapsed, el => el.child(label)); + return v_flex().size_full().bg(t.chrome).border_t(1).border_color(t.border).px(8).pt(4).pb(8).text_size(13) + .child(row("settings", "settings", "Settings", false, () => run("app.settings")) + .when(Boolean(updates().app.ready), el => el.child(div().size(6).rounded_full().bg(t.accent)))) + .child(row("machine", "plus", "Add machine", true, () => run("mod.open", { name: "machine-add" }))); + } + return h_flex().size_full().bg(t.chrome).pl(collapsed ? 6 : 14).pr(10).gap(4).items_center().text_size(13.5) + .when(window()?.platform === "macos" && !collapsed, el => el.pl(76)) + .when(!collapsed, el => el.child(h_flex().flex_1().gap(8).items_center().child(image("mods/refactoria-chrome/logo.png").size(20).rounded(5)).child(image("mods/refactoria-chrome/wordmark.png").h(16).w(108)))) + .when(!collapsed, el => el.child(this.button("search", svg("mods/workspace-chrome/search.svg").size(15), () => run("mod.open", { name: "picker" })))) + // On the macOS rail the traffic lights fill the row; the agents list's ยป unfolds it. + .when(!(collapsed && window()?.platform === "macos"), el => el.child(this.button("sidebar-toggle", svg("mods/workspace-chrome/sidebar.svg").size(15), toggleSidebar))); + } +} diff --git a/herdr/desktop/mods/refactoria-chrome/mod.json b/herdr/desktop/mods/refactoria-chrome/mod.json new file mode 100644 index 0000000..79364d5 --- /dev/null +++ b/herdr/desktop/mods/refactoria-chrome/mod.json @@ -0,0 +1,6 @@ +{ + "place": "none", + "cloned_from": { + "name": "workspace-chrome" + } +} diff --git a/herdr/desktop/mods/refactoria-chrome/wordmark.png b/herdr/desktop/mods/refactoria-chrome/wordmark.png new file mode 100644 index 0000000000000000000000000000000000000000..4ee50541dd487fd0fad6380d7de82d891449d834 GIT binary patch literal 28393 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

-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 n?TKa6`+*3qpO(Gz|9km=S0|9n8D literal 0 HcmV?d00001 diff --git a/install.sh b/install.sh index 7af96ad..808ccb6 100755 --- a/install.sh +++ b/install.sh @@ -36,6 +36,8 @@ MANAGED_LINKS=( "herdr/desktop/mods/refactoria-agents/mod.json|$HOME/.config/herdr-app/mods/refactoria-agents/mod.json|darwin" "herdr/desktop/mods/refactoria-prs/main.js|$HOME/.config/herdr-app/mods/refactoria-prs/main.js|darwin" "herdr/desktop/mods/refactoria-prs/mod.json|$HOME/.config/herdr-app/mods/refactoria-prs/mod.json|darwin" + "herdr/desktop/mods/refactoria-chrome/main.js|$HOME/.config/herdr-app/mods/refactoria-chrome/main.js|darwin" + "herdr/desktop/mods/refactoria-chrome/mod.json|$HOME/.config/herdr-app/mods/refactoria-chrome/mod.json|darwin" "ghostty/shaders|$HOME/.config/ghostty/shaders|all" "ghostty/profiles/barbatdev.conf|$HOME/.config/ghostty/profiles/barbatdev.conf|darwin" "ghostty/profiles/refactoria.conf|$HOME/.config/ghostty/profiles/refactoria.conf|darwin" @@ -576,6 +578,11 @@ seed_file "$DOTFILES/opencode/tui.json" "$HOME/.config/opencode/tui.json" # Herdr Desktop rewrites settings.json (theme picker, zoom keys): seed a copy. if [[ "$PLATFORM" == "Darwin" ]]; then seed_file "$DOTFILES/herdr/desktop/settings.json" "$HOME/.config/herdr-app/settings.json" + # Herdr Desktop does not load mod images through a symlink: copy them. + for image in logo.png wordmark.png; do + seed_file "$DOTFILES/herdr/desktop/mods/refactoria-chrome/$image" \ + "$HOME/.config/herdr-app/mods/refactoria-chrome/$image" + done fi # Pi owns settings.json: merge only the RefactorIA appearance keys into it. if command -v python3 &>/dev/null; then