From 6f38baef34b6415f753c6474a88fcbd15967cc0c Mon Sep 17 00:00:00 2001 From: Andrew Blakeslee Moore Date: Mon, 6 Jul 2026 17:36:33 -0700 Subject: [PATCH] Add Stop Button Implementation Nucleic-Session: 1449BBC5-E23C-4D04-BB12-321F41ED2F11 Co-authored-by: Nucleic --- .../NucleicRemote/Views/SessionDetailView.swift | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/NucleicRemote/NucleicRemote/Views/SessionDetailView.swift b/NucleicRemote/NucleicRemote/Views/SessionDetailView.swift index 1f77503..2343df6 100644 --- a/NucleicRemote/NucleicRemote/Views/SessionDetailView.swift +++ b/NucleicRemote/NucleicRemote/Views/SessionDetailView.swift @@ -362,6 +362,18 @@ struct SessionDetailView: View { .textFieldStyle(.plain) .lineLimit(1...4) .padding(.vertical, 3) + // Stop the in-flight turn (the Mac's ⌘. / "Interrupt"). Shown only + // while running and at control scope; send stays at the far right so + // its position never shifts. Mirrors `interruptShortcut`. + if running && store.canControl { + Button { store.interrupt(sessionID) } label: { + Image(systemName: "stop.circle.fill") + .font(.title2) + .foregroundStyle(.red) + } + .disabled(!store.connectivity.isLive) + .accessibilityLabel("Stop") + } Button { store.sendInput(draft, to: sessionID) draft = ""