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
- Memory leak when a lot of UI elements are spawned and despawned
- Warnings are not logged in the Console window when using external code analyzers
- Errors “TLS Allocator ALLOC_TEMP_TLS, underlying allocator ALLOC_TEMP_MAIN has unfreed allocations, size 288“ appear constantly when Prefab is open
- Crash on PPtr<Shader>::operator or NullException errors spammed in console when calling Dispose() on null GraphicsBuffer with baked Reflection Probes
- “EndRenderPass: Not inside a Renderpass” and other Render Graph errors in the Player when Render Graph is enabled and Overlay UI is used
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.