Skip to content

[4.5-beta1] Mouse enter/exit events not working properly with embedded game window on macOS #107819

Open
@mertkasar

Description

@mertkasar

Tested versions

  • Reproducible in: v4.5.beta1.official [46c495c], v4.5.dev5.official [64b0990], v4.5.dev4.official [209a446]
  • Reproducible only on macOS

System information

Godot v4.5.beta1 - macOS Sequoia (15.5.0) - Multi-window, 2 monitors - Metal (Forward+) - integrated Apple M1 Pro (Apple7) - Apple M1 Pro (10 threads) - 16.00 GiB memory

Issue description

The embedded game window does not respond to Input.warp_mouse() and does not trigger mouse events such as NOTIFICATION_WM_MOUSE_ENTER and NOTIFICATION_WM_MOUSE_EXIT, which might commonly used for displaying custom in-game cursor images with complex visuals or effects.

This makes working in the editor with an embedded game window using this kind of cursor management logic very difficult. Once the mouse is captured by the game window, it renders the cursor invisible outside, unless clicked.
Image

Expected behavior:
Image

This behavior is not observed on Windows and Linux with the same MRP.

Steps to reproduce

  • Open the MRP
  • Make sure "Embed game on next play" is on (floating or not)
  • Mouse warp on boot not working, embedded game window does not react to mouse enter/exit events
  • Click something on editor window outside the embedded game window (eg. hierachy), then click back to the embedded game window
  • Game window now reacts to the mouse but enter/exit events still not working unless mouse clicked

Minimal reproduction project (MRP)

mrp-embed-mouse-events.zip

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions