Claude Code desktop app steals focus on every notification (regression — was: silent banner only)

Resolved 💬 2 comments Opened May 26, 2026 by antjelausch-eng Closed May 26, 2026

Summary

Every notification from scheduled tasks or hooks now raises the entire Claude Code app window to the foreground and steals focus from whatever I'm working in (Canva, browser, other apps). Previously the notification appeared only as a small banner in the top-right corner — the app stayed in the background. This is a regression from the previous behavior.

Before (worked fine)

  • Notifications showed up as small banners in the top-right corner
  • I could click "Approve" or dismiss directly inside the banner
  • The Claude Code app stayed in the background — no focus steal

Now (regression)

  • Banner still appears in the top-right (good!) ✅
  • BUT the entire Claude Code app window also pops to the foreground every time ❌
  • Focus is stolen from whatever app I'm currently typing in
  • Highly disruptive when working in Canva, writing emails, etc. — interrupted mid-sentence

Setup

  • OS: macOS (Darwin 25.5.0)
  • App: Claude Code desktop app (latest build, May 2026)
  • Use case: Multiple legitimate scheduled tasks running every 30 minutes (Gmail draft generator, content scheduler, etc.)
  • macOS notification style for Claude Code: "Banners" (not "Alerts")

What I'd love

A setting to keep the banner behavior but prevent the app from grabbing focus. Something like:

\\\json
{
"notifications": {
"raiseWindowOnNotification": false
}
}
\
\\

The banner alone is perfect — please don't remove it. Just stop pulling the whole window to the front.

Related (closed) issues

  • #39558 — Chrome extension focus stealing (closed)
  • #7810 — Plugin window focus stealing during diff approval (closed)
  • #32726 — VSCode extension focus stealing (still open)

This is the same class of bug but for the standalone macOS desktop app, which wasn't covered by the previous fixes.

Thanks!

View original on GitHub ↗

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