Skip to content

[Windows][Pets] Built-in and custom floating pets become click-through and cannot be dragged #41513

Description

@Lucency09

Environment

  • ChatGPT/Codex desktop app: 26.825.5331.0 x64
  • Also reproduced on: 26.825.4187.0
  • Platform: Windows x64
  • Pets tested:
    • Official built-in pet: Codey
    • Custom pet: Remiel (configured width: 224 px)

Description

The floating pet becomes click-through and cannot be clicked or dragged. Pointer input is delivered to the desktop or application underneath the pet.

The issue affects both the official built-in Codey pet and the custom Remiel pet. Switching pets does not resolve it, so it does not appear to be caused by custom pet artwork or packaging.

The overlay can also display layout artifacts. In the attached screenshots, the controls are clipped and a visible purple rectangular boundary appears beside/below the built-in pet.

Steps to reproduce

  1. Wake the floating pet.
  2. Select the official built-in Codey pet.
  3. Move the pointer over the mascot and press-drag.
  4. Observe that the click is handled by the desktop or application underneath instead of starting a drag.
  5. Switch to the custom Remiel pet and repeat.
  6. Observe the same click-through behavior.

Expected behavior

The mascot hit region should receive pointer input, and both built-in and custom pets should remain draggable.

Actual behavior

Pointer input passes through the pet overlay to the underlying desktop or application. The pet cannot be dragged.

Diagnostics

The pet overlay retained the Windows WS_EX_TRANSPARENT extended style:

  • Broken state: ExStyle 0x2800A8
  • Temporarily working state: ExStyle 0x280088
  • In a 15-second diagnostic run, 150/150 samples remained transparent while the cursor was inside the overlay.

Clearing only WS_EX_TRANSPARENT temporarily restored dragging. The application later enabled the flag again, and dragging stopped again.

Suspected cause

This appears to be a mismatch between the avatar overlay's internal pointer-interactivity state and the actual Windows extended window style.

The input-shape path appears to mark mousePassthroughMode as disabled after setInputShape() succeeds. If WS_EX_TRANSPARENT remains enabled at the Windows level, later calls can skip setIgnoreMouseEvents(false) because the internal state already says mouse passthrough is disabled.

It may be necessary for applyInputShape() to call setIgnoreMouseEvents(false) unconditionally before applying the input shape, or to verify the actual Windows style before returning.

Troubleshooting already attempted

  • Fully restarted the desktop app.
  • Reproduced across app versions 26.825.4187.0 and 26.825.5331.0.
  • Switched between the official built-in Codey pet and the custom Remiel pet.
  • Verified that clearing only WS_EX_TRANSPARENT temporarily restores dragging.

Attachments

  1. CodexPetBug_01_Custom_Remiel_ClickThrough.png
Image
  1. CodexPetBug_02_BuiltIn_Codey_ClickThrough.png
Image

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    appIssues related to the Codex desktop appbugSomething isn't workingpetswindows-osIssues related to Codex on Windows systems

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions