From the UDN:

  • When setting the PlayerController input mode to "UI Only", all game inputs are blocked/frozen to their current state, and release (ETriggerEvent::Canceled) is not called on them. Any input change that happens during the "UI Only" input mode won't ever be aknowledged, so the input state isn't restored to the new value/state they should have when the input mode is reset to "Game". This forces the player to have to toggle the button again (e.g. RMB to Aim) if they had RMB down when opening the menu and released it when the menu was still up. Note that occasionally I got ETriggerEvent::Canceled to trigger here, but I never managed to get it reliably.
Steps to Reproduce

[Link Removed] explanation [Image Removed] 



  1. Open Lyra
  2. Make a boolean input action "IA_TestButton" 
  3. Make a float input action "IA_LongPress"
  4. Add IA_TestButton to IMC_ShooterGame_KBM, mapped to the "N" key, with a "pressed" input trigger
  5. Add IA_LongPress to IMC_ShooterGame_KBM, mapped the "M" key, with a "Hold" trigger with the Hold Time Threshold set to 2.0
  6. Open B_Hero_ShooterMannequin
  7. Add IA_TestButton and IA_LongPress event nodes to the graph. 
  8. Add some logs to the Triggered, Canceled, and Started pins on the Long Press action
  9. For the test button, change the input mode to UI Only on the lyra player controller
  10. Make sure the "Flush Input" checkbox is set to true
  11. PIE in L_ShooterGym
  12. Press and hold M for a short time, and then press "N" to switch the input mode

Expected: The Long Press input action get's canceled! 

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-149784 in the post.

Login to Vote

ComponentUE - Gameplay - Input
Affects Versions5.0
Target Fix5.1
Fix Commit21492510
Main Commit21500803
CreatedApr 20, 2022
ResolvedAug 22, 2022
UpdatedSep 10, 2022