From f8bbb2e9939de292be1d2efec18609743798453d Mon Sep 17 00:00:00 2001 From: Viktor Barzin Date: Mon, 23 Mar 2026 00:37:24 +0200 Subject: [PATCH] add fullscreen toggle to graph visualization Expand/collapse button in bottom-right corner lets the graph fill the entire viewport for better exploration. Escape key exits fullscreen. Category filters overlay in top-left when fullscreen. --- src/claude_memory/ui/static/css/app.css | 54 +++++++++++++++++++++++++ src/claude_memory/ui/static/index.html | 16 ++++++++ src/claude_memory/ui/static/js/graph.js | 19 +++++++++ 3 files changed, 89 insertions(+) diff --git a/src/claude_memory/ui/static/css/app.css b/src/claude_memory/ui/static/css/app.css index 907095c..ab46abe 100644 --- a/src/claude_memory/ui/static/css/app.css +++ b/src/claude_memory/ui/static/css/app.css @@ -289,6 +289,60 @@ textarea.input-field { height: 100%; } +/* Fullscreen toggle button */ +.fullscreen-toggle-btn { + position: absolute; + bottom: 1rem; + right: 1rem; + z-index: 11; + background: var(--bg-secondary); + border: 1px solid var(--border); + border-radius: 6px; + padding: 0.5rem; + color: var(--text-muted); + cursor: pointer; + transition: all 0.2s; + display: flex; + align-items: center; + justify-content: center; +} + +.fullscreen-toggle-btn:hover { + color: var(--accent); + border-color: var(--border-accent); + box-shadow: 0 0 12px var(--accent-glow); +} + +/* Graph fullscreen mode */ +.graph-fullscreen { + position: fixed !important; + inset: 0 !important; + z-index: 50 !important; + background: var(--bg-primary) !important; + padding: 0 !important; + margin: 0 !important; + width: 100vw !important; + height: 100vh !important; +} + +.graph-fullscreen .graph-container { + height: 100vh !important; + border-radius: 0; + border: none; +} + +.graph-fullscreen .flex.flex-wrap.gap-2.mb-4 { + position: absolute; + top: 0.75rem; + left: 0.75rem; + z-index: 11; + background: var(--bg-primary); + padding: 0.5rem 0.75rem; + border-radius: 6px; + border: 1px solid var(--border); + opacity: 0.9; +} + /* Node detail panel */ .node-detail { background: var(--bg-secondary); diff --git a/src/claude_memory/ui/static/index.html b/src/claude_memory/ui/static/index.html index 9d99b8c..4b22f40 100644 --- a/src/claude_memory/ui/static/index.html +++ b/src/claude_memory/ui/static/index.html @@ -488,6 +488,22 @@
+ + +