Claude Desktop (Windows ARM64): main window gets WS_EX_TOPMOST (always-on-top) on every launch, covers all other apps

Status Closed — not planned
Maintainer reply None cached
Activity 1 comment · opened Sep 4, 2026 · closed Sep 7, 2026

Summary

On Windows, the Claude Desktop main window gets the WS_EX_TOPMOST (always-on-top) extended window style set on every app launch. The window then covers all other applications, and clicking other apps on the taskbar cannot bring them in front of Claude.

Environment

  • Claude Desktop 1.46388.1, ARM64 build (installed from Microsoft Store / WindowsApps: Claude_1.46388.1.0_arm64__pzs8sxrjxfjjc)
  • Windows 11 Home 10.0.26200 (ARM64)

Steps to reproduce

  1. Launch Claude Desktop.
  2. Inspect the main window's extended style: GetWindowLong(hWnd, GWL_EXSTYLE) returns 0x280108 — the WS_EX_TOPMOST (0x8) bit is set.
  3. Try to switch to any other application — Claude stays on top of everything.

Observed behavior

  • Reproduced on two separate launches the same day (two different PIDs, both had TOPMOST=True right after startup), so it appears to happen on every launch, not intermittently.
  • Clearing the flag externally with SetWindowPos(hWnd, HWND_NOTOPMOST, ...) fixes it (ExStyle becomes 0x280100) and the app behaves normally afterwards — until the next app restart, when the flag is set again.
  • Not caused by third-party tools: PowerToys (Always On Top module) is not installed; no other window-management utilities running.
  • Nothing in %APPDATA%\Claude persists an always-on-top setting (window-state.json only has bounds/maximized/fullscreen; config.json has no onTop-related key), so this looks like a runtime setAlwaysOnTop(true) (or equivalent) applied to the main window during startup — possibly leaked from a companion/quick-entry window code path.

Expected behavior

The main window should be a normal (non-topmost) window; other applications should be able to come in front of it when focused.

Workaround

Running a small watcher that calls SetWindowPos(hWnd, HWND_NOTOPMOST, 0,0,0,0, SWP_NOMOVE|SWP_NOSIZE|SWP_NOACTIVATE) on the Claude main window after launch.

🤖 Generated with Claude Code

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗