Ctrl+C does not copy selected text in Claude desktop app — always interpreted as 'stop generating'

Resolved 💬 3 comments Opened May 15, 2026 by bachseans Closed Jun 13, 2026

Ctrl+C does not copy selected text in Claude desktop app — always interpreted as "stop generating"

Environment

  • App: Claude desktop (Windows, MSIX install from Microsoft Store)
  • Version: 1.7196.0.0
  • Install path: C:\Program Files\WindowsApps\Claude_1.7196.0.0_x64__pzs8sxrjxfjjc\app\Claude.exe
  • OS: Windows 11 Pro 10.0.26200

Steps to reproduce

  1. Open a conversation that has at least one response from Claude.
  2. Click-and-drag to highlight a span of text inside a message bubble (assistant or user).
  3. With the selection still visible, press Ctrl+C.

Expected behavior

The selected text is copied to the system clipboard. This is the universal Windows convention used by browsers, IDEs, File Explorer, Notepad, and — most relevantly — Windows Terminal, which adopted the convention "Ctrl+C copies if a selection exists, otherwise it sends interrupt."

Actual behavior

Ctrl+C is captured by the app as "stop generating" (or silently swallowed when no generation is active). The clipboard is not updated. The only ways to copy are:

  • Right-click → Copy on the selection
  • The hover-revealed Copy button on a message bubble, which copies the entire message rather than the selected span

Suggested fix

When the focused element has a non-empty text selection, defer to the standard clipboard path (document.execCommand("copy") or the Clipboard API) instead of routing Ctrl+C to the interrupt handler. Otherwise, fall through to the existing "stop generating" behavior. This mirrors Windows Terminal's copyOnSelect/Ctrl+C resolution and matches user expectation from every other Windows app.

Impact

Copying snippets — code, command names, URLs, extension names — out of Claude's responses is a many-times-per-session operation. The current binding forces users to switch to mouse-based copying for what is otherwise muscle-memory keyboard work, and the whole-message Copy button can't substitute when only a partial selection is wanted.

Notes

  • Reproduces on a fresh window with no in-flight generation, so it isn't only the "interrupt during stream" case.
  • The Ctrl+Shift+C and Ctrl+Insert paths also do not copy (worth confirming during triage).

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗