Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

macOS: editor requires a click to activate the window before accepting any UI interactions #86904

Open
tkgalk opened this issue Jan 6, 2024 · 8 comments

Comments

@tkgalk
Copy link

tkgalk commented Jan 6, 2024

Tested versions

  • v4.2.1.stable.official [b09f793]
  • v3.5.3 (slightly better, but the behaviour is the same)

System information

  • macOS 14.2.1 - Apple M1 Max - 32GB - MacBook Pro 14" 2021
  • macOS 14.2.1 - Apple M1 Pro - 16GB - MacBook Pro 14" 2021

Issue description

In the video attached you can see that when you're Alt-Tabbed to another window Godot editor doesn't receive any input to its UI controls. It requires a click to make the window active, then about 0.5-1s to actually become active, and then requires another click to actually use the UI controls.

For comparison, in the same video, notice how snappy and responsive VS Code is. It also accepts input to its UI controls right away without needing to be the active window.

Managed to confirm the same issue on both my personal and work MacBooks.

Godot (responds to hovers, but not to clicks):

Screen.Recording.2024-01-06.at.23.45.56.mov

Comparison with Unity Editor behaviour (you can see the Unity Editor even responds to hovers without being the active window):

Screen.Recording.2024-01-07.at.00.04.21.mov

Steps to reproduce

Just install Godot, reproducible on both mono and "normal" editor on fairly empty scene.

Minimal reproduction project (MRP)

Reproducible on an empty, new project.

@tkgalk
Copy link
Author

tkgalk commented Jan 6, 2024

#78758 <- another issue that mentions poor window behaviour in macOS.

@tkgalk
Copy link
Author

tkgalk commented Jan 6, 2024

Additional video about general poor window performance compared to VS Code (which is an Electron app and doesn't behave even close to native macOS apps anyway). It's hard to see due to video compression, but you can just about notice how it takes longer for Godot's editor to "notice it's being dragged around".

Screen.Recording.2024-01-06.at.23.53.38.mov

@Calinou
Copy link
Member

Calinou commented Jan 9, 2024

Can you reproduce this after enabling Update Continuously in the Editor Settings? Note that this setting will cause CPU/GPU utilization to increase.

@tkgalk
Copy link
Author

tkgalk commented Jan 9, 2024

Made things smoother (IMO), but the main issue remains. You still have to click on the editor to make it active before actually being able to receive UI actions (clicking buttons et cetera). Makes multi-monitor/multi-window work very annoying.

@bruvzg
Copy link
Member

bruvzg commented Jan 9, 2024

Are you running a standalone executable (custom build, not packed to .app bundle)? Or running Godot from terminal. If you do pack it to the .app bundle. This is a usual (and unfixable) issue for unbundled apps.

@tkgalk
Copy link
Author

tkgalk commented Jan 9, 2024

I use Godot.app straight from the website, the only thing I did to it is moved it to Applications folder. And it seems to be a native Apple ARM version too.

Also, for completeness:

  • the same behaviour on Godot and Godot_mono,
  • having an external screen or not doesn't affect it (in case my Macbooks just have too many pixels to render).

@pkdawson
Copy link
Contributor

pkdawson commented Jan 9, 2024

The extra click is also required for switching between windows within Godot, like if you have the script editor in a separate window.

@passivestar
Copy link
Contributor

Additional video about general poor window performance compared to VS Code

This was reported here: #66684
Still happens in v4.3.dev6

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

No branches or pull requests

5 participants