Cherry-Picking 5.8 Input System Changes

Hello,

In the Unreal Engine 5.8 Public Roadmap, there is a card titled Streamlined input system: Common UI and Enhanced Input. I’m in the process of trying to move my project away from non-EnhancedInput methods of UI input handling and generally onto better input handling practices, so these upgrades are potentially pretty compelling.

My team has identified this commit [[EI + Common UI] Input Mode updates and changes](https://github.com/EpicGames/UnrealEngine/commit/b8a5cd85b5f4e7cf4bd0ddaf2658132368283343) as one we likely want to cherry-pick back to our project that is on UE 5.7, but what other commits in 5.8 should we grab if we want the whole package of UI input handling improvements?

Thanks!

Steps to Reproduce
N/A - Not an error. This is a question about cherry-picking changes from 5.8 back to 5.7.

Hi,

That CL is the entirely of the change being referred to by that roadmap entry; the wording there is a bit vague and we still don’t have a truly “unified” input pipeline, but the problem is made less painful by making it a bit easier to get input down to EnhancedInput. The vision here is that if you’re diligent about making sure no UI content consumes your input, these changes let you bypass the older “UI vs. Game” input filtering that happened at the viewport level and pass it onward for EI to handle. That pairs well with the existing tags that you can use to filter your EI mapping contexts, so instead of blocking all input from ever reaching the PlayerInput/EnhancedInput system we leave it to EI to filter out “game” input based on tags.

Of course, CommonUI has a very similar restriction where it counts on input making it’s way down to the viewport so it can do it’s own routing (and vanilla UMG widgets can still cause some chaos by consuming inputs earlier in the stack), but fully consolidating all of these input handlers will likely be a much larger and riskier change.

Hi Cody,

That’s exactly what I needed to know. I have cherry-picked that change down to 5.7, overridden the new ShouldViewportContinueRoutingInputInUIOnlyMode on my PlayerController, and set up tag-based filters to prevent game IMCs being handled in a Menu context. It works great. Thanks for your answer!

Best,

Rex