godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
87.1k stars 19.56k forks source link

Connecting a signal with a double click is too difficult #92382

Open miv391 opened 2 months ago

miv391 commented 2 months ago

Tested versions

System information

Godot v4.3.dev6.mono - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1060 6GB (NVIDIA; 31.0.15.5212) - Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz (4 Threads)

Issue description

Connecting a signal using a double click is quite difficult. It nees a lot of fast clicking, a normal double click doesn't usually work.

The culprit here is the popup window showing information about the signal. If I manage to double click before the popup pops up, all is fine and the "Connect Signal to a Method" window opens. But the popup pops up quite fast and after that the first mouse click (part 1 of a double click) just closes the popup. Then the second mouse click (part 2 of a double click) doesn't do anything. Then the popup pops up again, even if the mouse cursor is not moved.

The simplest (even if not perfect) solution could be to ensure that the popup does not popup again if the mouse cursor is not moved a decent amount. The at least after the first unsuccessful double click the second attempt would work.

kuva

Steps to reproduce

  1. Move cursor over some signal in Node's Signals view.
  2. Wait until the popup pops up.
  3. Double click --> "Connect Signal to a Method" window does not open.
  4. Be confused for a few seconds --> Popup pops up again.
  5. Goto 3.

Minimal reproduction project (MRP)

N/A

matheusmdx commented 1 month ago

Tested with 4.3.dev6 and latest master be56cab58 and i can confirm the problem, also, if you open using --single-window the input problem stops but the tooltips don't dissapear when you hover the mouse in another signal

https://github.com/godotengine/godot/assets/44306054/c110d3ea-dd38-496e-af53-af999b2e9f9e

Bisecting points to #89058 as the culprit:

image

4X3L82 commented 1 month ago

If you keep wiggling the mouse, the popup doesn't pop-up and you can easily double-click (although it's a bit silly).

Wouldn't the cleanest (& simplest?) solution be that the first click of the double-click closes the pop-up but also passes it on to the next layer, so you can still click again for a double-click?