Common UI Bound Actions and Action Bar on gamepad and Keyboard-mouse input

Hello fellow developers! I’m learning CommonUI i Enchanced Input System to build a menu system that can be easely operated via keyboard and mouse, and gamepad. So far so good, but I have stuck on issue with nature of Common Bound Action Input and Action Bar.

I have created a Bottom HorizontalBox in which I have put BoundActions (SaveSlot, Load Slot, DeleteSlot) and ActionBar.

After I push Save Menu to stack I call function sending ‘name’ variable of Tab ID (I use this Interface in option screens that contain Tab List or submenus) to setup Title and Mapping Context for this menu screen:

When i run the game on gamepad it works perfect. Action bar shows only those bound actions that I have in added Mapping Context (SaveMenu or LoadMenu) and Back Handler Button.

Yet on keybaord all bound actions are visible but those not being in Mapping Context Have noAction Input icon, but text remains :confused:

In other words I do not know how to hide Action Input text like on gamepad.
I have been trying this bool On/Off but in vain

It seems like a bug. I haven’t tried 5.7 if it is happening or not yet. Has anyone same issue and got it working? Thanks in advance!

Hello @pshmslv ,
You could try the following to check if the issue is caused by duplicated IMCs, Here’s a simple example of how that logic could look:

In the BP_PlayerController, there’s an IMC_Default, which is the default input mapping.


So, when you create your UI, you should remove the IMC_Default and add the new one in this case, IMC_MenuLoad.
Then, when switching to the save menu (SaveGame), which uses a different IMC, make sure to remove the previous one before adding the new one, otherwise both IMCs will remain active and the inputs might overlap.

Finally, when closing the UI and returning control to the game, you should restore the IMC_Default.

Hope it helps!

Hello @BRGEzedeRocco thanks for feedback :flexed_biceps:

In my project I have 2 IMCs 1. Fpp_Gameplay and 2. Fpp_Menu. Player Character calls Player Controller to add Gameplay Mapping, then Player Controller through PauseGame event sets Menu or Gameplay Mapping dependent on state.

The Menu calling logic → I pause the game first and then push menu to screen. So, firstly Mapping Context is changed and then menu shows up.

I remind that on gamepad those Actions are hidden as should be, but when Keybord is Active the Action Text shows up, yet Action Icon is hidden as should be. Look, when I have Load Menu open “Save Slot” has no icon, but Text, and ‘Load Slot’ Action has both. I switched to Gamepad and “Save Slot” Action dissapeared.

I doesn’t matter if i set the Action Input widget Collapsed, hidden or Visible.

To sum up, I made sure the logic You provided i implemented, but the issue still appears :confused:

I can add that the input actions (Save Slot and Load Slot) do not shows up in gameplay or any other mapping context.

Seeing that removing and re-adding the IMC doesn’t solve the issue, from what I can tell in your setup you’re missing a Data Table, an InputData Blueprint, among other things, and need to enable some options in the Project Settings.
Here are some videos that explain very well how to properly configure the Common UI plugin so it works as intended.

I’m also sharing the official documentation, which covers the same setup steps I mentioned above and includes a section about CommonBoundActionBar that might be useful to you.

Common UI

Common UI Quickstart Guide

Common Bound Action Bar

Hope it helps! Let me know if you managed to fix it!