UMG RenderTransforms break cursor when escaping viewport bounds in editor

*Occurs in the master branch also.

When using widgets that use render transforms (any: translate, scale, shear, angle, pivot) that extend outside the bounds of the viewport the cursor will continue to interact as if it’s hovering over the game viewport in any area that the rendered widget *is*.

This means hovering on menu items doesn’t work and clicking just selects something in the level. Also of note it only really affects the portions of the editor to the left and above the game viewport (to the right and below the game viewport it only affects the panel scaling).

To replicate:

  1. Make a First Person Blueprint template project
  2. Create a new Widget blueprint, add a border to the canvas, set the border to fullscreen anchor size and alignment, tint alpha to 0.5 (so you can still see the game through it) and set its render transform scale (X and Y) to 2.
  3. Open the FirstPersonCharacter blueprint, Create the widget and attach it to the viewport at the beginning of the BeginPlay event
  4. Hit play, unpossess with F8 and attempt to click editor controls to the left or above the game viewport and you’ll see the issue. Attempt to scale the game viewport panel from below or to the right and you’ll also see it.

Screenshot follows showing the issue with a translate transform on my UMG border for easy visualising.

The issue is a problem for us as a lot of our UI animates onto and off of the screen from outside the viewport and currently requires an extra pre step in all the animations that keep them within bounds but hidden to avoid any particular game state affecting editor useability.

Thank you for submitting a bug report. I have reproduced this issue and logged a report for it here

https://jira.it.epicgames.net/browse/UE-42862

You can track the report’s status as the issue is reviewed by our development staff. Please be aware that this issue may not be prioritized or fixed soon.