-
-
Notifications
You must be signed in to change notification settings - Fork 21.6k
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
Popup in 2D editor teleports for one frame #59181
Comments
I've looked over the issue a bit. I managed to find the line actually causing it, however - I have no clue how to fix this one: Line 419 in scene_tree.cpp: It seems that the popup disappears during the Edit: Actually, this explanation doesn't really make a lot of sense. It uses the same node |
Reopening, the PR only fixed right-click. It can still happen with the list tool. |
By the way, it would make sense this would be affected by my changes in that PR. In the 4.0 code without --single-window, each popup is a window. And the window message handler was discarding the first 6-8 messages for each new window. Now it discards 0. It is not surprising if fixing that makes some other problems go away. |
I am testing with the right mouse button re-enabled, reverting the PR that took it out. This seems like a sequence problem, with a deferred operation triggering itself in the popup code. The first popup gets closed twice, but in the meantime, it has been reused and moved to the new location. Like so (not all frames shown):
Now to find a clean fix. The challenge is that there are multiple ways that popups are called, sometimes the window is set to hidden from code, other times the MouseProc calls directly into it. With the current structure, I haven't found a clean way to prevent the asynchronous recursion. The popup code doesn't really know in which context it is used, whether it is responsible for scheduling the Window::hide. I am trying to find a fix for that without restructuring. |
I have a fix, just waiting on PR in the same area to go in first for clean rebase. |
popup no longer tries to close itself a second time popup no longer closes after having been reopened fixed bug in RenameDialog not calling base (by inspection) fixes godotengine#59181 fixes godotengine#60921 reverts godotengine#59287
Godot version
fb28025
System information
W10
Issue description
When clicking outside menu, it changes position to cursor and then gets closed immediately. Happens also on events that should open it again, e.g. right-clicking in another place will not prevent closing the popup.
It might have similar cause to #58726
Steps to reproduce
Minimal reproduction project
No response
The text was updated successfully, but these errors were encountered: