From b2ea0f3810ba568d420cc4004ccb63bbc4ebda54 Mon Sep 17 00:00:00 2001 From: Teknium <127238744+teknium1@users.noreply.github.com> Date: Wed, 19 Aug 2026 16:17:57 -0700 Subject: [PATCH] fix(desktop): gateway restart no longer clickable-by-mistake next to reconnect Community report (X @Cobalt_Peak): Reconnect and Restart gateway in the statusbar gateway popover rendered the same RefreshCw icon side by side, so users triggered full gateway restarts when they meant to reconnect. - Restart now uses a Power icon with a destructive hover tint - Moved restart to the end of the row, after the system-panel button, behind a visual divider separating it from the benign actions --- .../src/app/shell/gateway-menu-panel.tsx | 28 +++++++++++-------- apps/desktop/src/lib/icons.ts | 2 ++ 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/apps/desktop/src/app/shell/gateway-menu-panel.tsx b/apps/desktop/src/app/shell/gateway-menu-panel.tsx index 8e1516b7bd..ff61fe6c26 100644 --- a/apps/desktop/src/app/shell/gateway-menu-panel.tsx +++ b/apps/desktop/src/app/shell/gateway-menu-panel.tsx @@ -6,7 +6,7 @@ import { LogView } from '@/components/ui/log-view' import { Tip } from '@/components/ui/tooltip' import { getLogs } from '@/hermes' import { useI18n } from '@/i18n' -import { LayoutDashboard, RefreshCw } from '@/lib/icons' +import { LayoutDashboard, Power, RefreshCw } from '@/lib/icons' import type { RuntimeReadinessResult } from '@/lib/runtime-readiness' import { cn } from '@/lib/utils' import { reconnectGateway } from '@/store/gateway-reconnect' @@ -185,17 +185,6 @@ export function GatewayMenuPanel({ )} - - - + {/* Restart is the heavy, disruptive action: keep it visually distinct + (power icon, destructive hover) and separated from the benign + reconnect/system buttons so it can't be hit by mistake. */} + + + + diff --git a/apps/desktop/src/lib/icons.ts b/apps/desktop/src/lib/icons.ts index 943dd1870a..54cac8d185 100644 --- a/apps/desktop/src/lib/icons.ts +++ b/apps/desktop/src/lib/icons.ts @@ -94,6 +94,7 @@ import { IconPin as Pin, IconPlayerPlay as Play, IconPlus as Plus, + IconPower as Power, IconRefresh as RefreshCw, IconRefresh as RefreshCwIcon, IconDeviceFloppy as Save, @@ -222,6 +223,7 @@ export { Pin, Play, Plus, + Power, RefreshCw, RefreshCwIcon, Save,