Search Issue Tracker
By Design
Votes
0
Found in
2022.3.62f1
6000.0.49f1
6000.1.3f1
6000.2.0b2
6000.3.0a1
Issue ID
UUM-105677
Regression
No
UGUI Pointer Enter/Exit does not always trigger when hovering quickly over it
Reproduction steps:
1. Open the attached “IN-101948.zip” project
2. Open the “Scene” Scene
3. Enter Play mode
4. Hover quickly over the squares side to side
5. Repeat the hovering a few times, fast
6. Observe the color of the square
Expected result: After the cursor leaves the square, its colour is red (means exit was triggered)
Actual result: Sometimes the color of the square remains green (means exit was not triggered)
Reproducible with: 2022.1.0a1, 2022.3.62f1, 6000.0.49f1, 6000.1.3f1, 6000.2.0b2
Reproducible on: Windows 11
Not reproducible on: no other environment tested
Note:
- Also reproduces in the Player
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Out-of-bounds memory access with multiple CanvasRenderers under a Canvas when using Mesh API
- Inspector tries to access file after it was deleted when the file was locked in Inspector window
- Changing Transform values in Search window Inspector loses focus while dragging and stopping mouse without releasing dragging action
- Saving changes on the dirty VFX Graph during the Play mode throws "The referenced script (Unknown) on this Behaviour is missing!" warnings
- VFX Graph Debug Info overlaps the "Initialize" block debug info by default
Resolution Note:
The repro project scene is not set up correctly to make proper use of the hover hierarchy. If you want the "Image (exit)" GameObject to be around the "Image (enter)" GameObject and act as an exit barrier that catches the Exit event for the inner object, you need to make it a parent of the inner object.
As it stands in the repro project, the "Image (exit)" GameObject is a sibling of the "Image (enter)" GameObject, which makes it only receive an Exit event if it had previously received an Enter event, which is not guaranteed to happen if the "Image (enter)" GameObject blocks it for every frame that the mouse moves over it.
Yes, frame rate will have an impact on this behavior. It's the project that's not set up correctly. Worst case, just add an invisible parent that matches the larger object's dimensions and catches the exit events for the inner object.