enso-org / enso

Hybrid visual and textual functional programming.
https://enso.org
Apache License 2.0
7.31k stars 317 forks source link

After clicking dropdown entry, node is stuck in hovered state #10312

Open kazcw opened 1 week ago

kazcw commented 1 week ago

Discord username

No response

What type of issue is this?

Permanent – Occurring repeatably

Is this issue blocking you from using Enso?

Is this a regression?

What issue are you facing?

After clicking a dropdown entry, sometimes the node selection is rendered in hovered state until the next time the node is hovered and un-hovered. The problem occurs when the clicked entry is far enough down the menu that once the menu closes, the pointer is over the graph background.

Expected behaviour

If after closing the dropdown menu the pointer is no longer over any part of the node, the node should stop being rendered as hovered.

How we can reproduce it?

No response

Screenshots or screencasts

No response

Logs

No response

Enso Version

current develop

Browser or standalone distribution

Chrome

Browser Version or standalone distribution

126.0.6478.61 (Official Build) (arm64)

Operating System

MacOS

Operating System Version

No response

Hardware you are using

No response

kazcw commented 1 week ago

After the dropdown is removed from the DOM, we receive a spurious pointerenter event. There is no corresponding pointerleave.

The problem seems to be caused by a Chromium bug: https://issues.chromium.org/issues/40156858

We need to find a workaround. I have compared mouseenter/mouseleave, and they exhibit the same bug.