Skip to content

[kicker] Cache position of hover enter events before replaying

David Edmundson requested to merge work/triangle_2 into master

The triangle mouse blocks events that happen within a given region and conditions, then replays those events when those conditions get broken.

If we intercept an enter event, we capture that under m_interceptedHoverItem so that if conditions change we can replay that hover enter event before we then start sending move events.

Currently we replay that hover event using the current mouse position. This causes an issue for kickoff that has additional code to look for actual move events in order to avoid selecting the current item on scroll. Both codepaths are correct standalone, but together form a bug.

This patch caches the relative position of a HoverEnter event. Should we replay the enter event, we do so with the position of the enter. We then can replay a HoverMove to get the up-to-date location.

BUG: 447278

Merge request reports