Repository navigation
[Windows][Pets] Transparent overlay captures a large screen area, blocks Codex controls, and pet cannot be dragged #41596
Description
What version of the Codex App are you using?
Microsoft Store package OpenAI.Codex 26.825.6671.0 x64.
What platform is your computer?
Windows 11 25H2, build 26200.9168, x64.
What issue are you seeing?
The floating pet is visible but does not respond to left-click, right-click, or drag. This affects every tested pet. The same behavior was also observed on a second Windows PC.
This reproduction differs from the common click-through reports: the transparent pet overlay captures mouse input across a large invisible area. It blocks controls behind it, including the Codex window's maximize/close area, while the visible pet itself still does nothing.
Steps to reproduce
- Launch Codex Desktop on Windows.
- Wake/show any pet.
- Try to left-click, right-click, or drag the visible pet.
- Try to click Codex controls that lie behind the transparent portion of the overlay, such as maximize or close.
- Switch to another pet and repeat.
Expected behavior
- The visible pet and its activity controls receive pointer input and the pet can be dragged.
- Transparent overlay areas pass clicks through to the desktop or Codex window behind them.
- Codex window controls remain usable.
Actual behavior
- The pet cannot be clicked, right-clicked, or dragged.
- Transparent areas of the overlay swallow clicks.
- Codex window controls behind the overlay cannot be used.
- Switching pets does not change the behavior.
Native Windows diagnostics
One affected machine uses a 2880×1800 display at 200% scaling (logical 1440×900).
The pet overlay was inspected in the broken state:
- Physical bounds:
1376,0 1504×1800(logical688,0 752×900) - Extended styles:
WS_EX_TOPMOST | WS_EX_TOOLWINDOW | WS_EX_LAYERED;WS_EX_TRANSPARENTwas not set GetWindowRgnBoxreturnedRegionType=0, indicating no restricted native input region- Direct
WM_NCHITTESTreturnedHTCLIENTthroughout the overlay, including fully transparent points - At physical point
(2870,20), the overlay returnedHTCLIENT, while the underlying Codex main window returnedHTCLOSE
The main Codex window was responsive and actually maximized (Zoomed=True, ShowCmd=3); its controls were being occluded by the overlay's input handling.
This suggests the native input shape was not applied, leaving the entire layered overlay interactive, while the renderer's pet hit target still did not process click/drag actions.
Troubleshooting already attempted
- Updated and fully restarted the desktop app
- Switched between pets
- Confirmed all ChatGPT/Codex processes were responsive
- Confirmed no local mouse hook or Codex package modification was active
The current workaround is to tuck the pet away with /pet, which restores access to the blocked UI.
Related reports
These appear related but primarily describe the opposite failure mode, where clicks pass through the pet:
- [Windows][Pets] Built-in and custom floating pets become click-through and cannot be dragged #41513
- Windows: Pet overlay reacts to hover but ignores clicks, dragging, and voice controls #41506
- Windows floating pet remains click-through and cannot be dragged #41465
- Windows pet overlay loses its hit region after the first drag #41501
No conversation contents, local paths, raw logs, screenshots, or account identifiers are included in this report.
Activity
github-actions commentedon Aug 30, 2026
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
zoe-he9214 commentedon Sep 3, 2026
The pet still cannot be clicked or dragged, already updated to 26.901.1978.0 on Windows...
77kio commentedon Sep 5, 2026
I can reproduce this pet interaction/dragging failure on the Windows Microsoft Store version of Codex. I found a repeatable workaround that may help narrow down the native overlay/composition problem.
On my machine, the pet is visible but cannot be dragged. Running the following PowerShell reset once immediately restores dragging. After restarting Codex, the issue returns because a new pet overlay window is created.
The workaround finds the visible Codex
Chrome_WidgetWin_1overlay withWS_EX_TOPMOST | WS_EX_TOOLWINDOW | WS_EX_LAYERED, temporarily removesWS_EX_LAYERED, forces a window refresh, waits 450 ms, then restoresWS_EX_LAYEREDand refreshes again.This does not require changing
WS_EX_TRANSPARENT.Reset-Codex-Pet-Window.ps1Since toggling only the layered/composition state reliably restores interaction for the current overlay HWND, it may be useful to inspect the pet overlay initialization/recreation path and whether the native hit-test/input shape is being refreshed after the layered window is created.
— Don
mxwu619-ship-it commentedon Sep 7, 2026
I can reproduce this on Codex App 26.901.6511.0 (Windows x64, ChatGPT Plus) at 150% display scaling (
GetDpiForWindow= 144; renderer processes use--device-scale-factor=1.5).Additional diagnostics from the click-through variant:
Chrome_WidgetWin_1/ChatGPT, normallyExStyle=0x000800A8.WS_EX_TRANSPARENTchanges it to0x00080088and stops complete Win32 click-through, but does not restore the renderer pet hit target.WM_NCHITTESTreturnsHTCLIENT.772x720,422x720, and434x720, while DPI remained 144.This looks consistent with stale or incorrectly converted renderer hit-region rectangles (CSS px / DIP / physical px) being reapplied after pet-size, hide/show, or layout changes, plus divergence between
pointerInteractive,setIgnoreMouseEvents, and the native input shape.The
WS_EX_LAYEREDcomposition-reset workaround in the comment above is especially relevant: it suggests recreating/refreshing the layered surface also refreshes the missing or stale native input shape. A durable fix may need to recompute regions on DPI/display/pet-size/layout changes and reject stale region updates using a layout generation/revision.