Search Issue Tracker
Fixed in 1.1.0-pre.6
Votes
4
Found in [Package]
1.1.0-preview.2
Issue ID
1297536
Regression
No
EventSystem.current.IsPointerOverGameObject returns false when clicking on the GameObject after losing focus from the Game view
Reproduction steps:
1. Open attached "case_1297636.zip" project and Scenes/SampleScene scene
2. Enter the Play mode
3. In the Game view, click on Click Me button
4. Click in the Hierarchy window (or anywhere else outside of the Game view)
5. In the Game view, click on Click Me button
6. Observe the Console window
Expected result: "Inside" is logged in both lines
Actual result: "Outside" and "Inside" are logged
Reproducible with: 1.0.0 - 1.1.0-preview.2(2019.4.29f1, 2020.1.17f1, 2020.2.0f1, 2021.1.0a10)
Could not test with: 2018.4.29f1(could not downgrade)
Comments (2)
-
sarahnorthway
Apr 21, 2021 17:46
Alternate workaround: Input.mousePosition is correct during the first frame after gaining focus, so you can check its position within specific bounding boxes using RectTransformUtility.RectangleContainsScreenPoint.
-
sarahnorthway
Apr 20, 2021 23:18
It seems raytracing, button clicks and other mouse-pointer-related behaviors also don't work on the first frame after Unity gains focus. Forcing EventSystem.current.currentInputModule.Process() doesn't help.
The only workaround I could manage was to check IsPointerOverGameObject() again a frame or two later if it initially returns false.
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
- “FMOD failed to set the software format to the custom sample rate…” warnings are thrown as System Sample Rate value is being changed in Audio section of Project Settings window
- VFX Marquee selection does match the visual indicator
- “Invalid AABB aabb” errors are spammed when “Infinity” value is entered in Collider Component fields
- Editor Role does not sync with the MPPM Play Mode Scenario Role when entering Play mode
- Long asset names cause overlap with the “Find” function in search result tabs
Resolution Note (fix version 1.1.0-pre.6):
Fixed in: Input System 1.1.0-pre.6
Calling IsPointerOverGameObject() from within action callbacks will not work correctly. Starting with Input System 1.1.0-pre.6 there is a warning when doing so.