diff --git a/ui-electrobun/electrobun.config.ts b/ui-electrobun/electrobun.config.ts index e19d39a..db9d9d8 100644 --- a/ui-electrobun/electrobun.config.ts +++ b/ui-electrobun/electrobun.config.ts @@ -7,7 +7,15 @@ const useCEF = process.env.AGOR_CEF === "1"; // When CEF is active, enable remote debugging for CDP-based E2E automation. const cefFlags: Record | undefined = useCEF - ? { "remote-debugging-port": "9222", "remote-allow-origins": "*" } + ? { + "remote-debugging-port": "9222", + "remote-allow-origins": "*", + // Reduce CPU: disable GPU acceleration (GLXBadWindow errors on Linux + // cause continuous error recovery loop in software fallback mode) + "disable-gpu": true, + "disable-gpu-compositing": true, + "disable-software-rasterizer": false, + } : undefined; export default { diff --git a/ui-electrobun/src/mainview/StatusBar.svelte b/ui-electrobun/src/mainview/StatusBar.svelte index 00c1254..2742d4c 100644 --- a/ui-electrobun/src/mainview/StatusBar.svelte +++ b/ui-electrobun/src/mainview/StatusBar.svelte @@ -178,13 +178,11 @@ .dot.orange { background: var(--ctp-peach); } .pulse-dot { - animation: pulse 1.5s ease-in-out infinite; - } - - @keyframes pulse { - 0%, 100% { opacity: 1; } - 50% { opacity: 0.3; } + /* No CSS animation — use JS class toggle to avoid continuous repaint. + CEF + WebKitGTK both suffer from high CPU with @keyframes on small elements. */ + transition: opacity 0.3s ease; } + .pulse-dot.dim { opacity: 0.4; } .val { color: var(--ctp-text); font-weight: 500; } .cost { color: var(--ctp-yellow); } diff --git a/ui-electrobun/src/mainview/app.css b/ui-electrobun/src/mainview/app.css index 9e1048f..8ce37c9 100644 --- a/ui-electrobun/src/mainview/app.css +++ b/ui-electrobun/src/mainview/app.css @@ -219,10 +219,8 @@ html, body { --dot-color: var(--ctp-peach); } -@keyframes pulse-dot { - 0%, 100% { opacity: 1; transform: scale(1); } - 50% { opacity: 0.55; transform: scale(0.85); } -} +/* @keyframes pulse-dot removed — CSS animations cause continuous repaint + in CEF + WebKitGTK. Use JS class toggle instead. */ .project-name { font-weight: 600;