A configurable GUI icon that displays either keyboard key or joypad button assigned to the given action. Just activate the plugin and add ActionIcon node anywhere, set action and it will work. Keep in mind that in-editor preview is limited; actions only display when running your project.
Use Joypad Mode property to control whether the icon should display the joypad button or keyboard key. If set to Adaptive, it will automatically change after receiving relevant input.
Joypad Model can be used to customize the look of controller buttons. Supported are Xbox, DualShock and Joy-Con. Setting it to "Auto" will try to auto-detect the controller type. Default is Xbox.
Favor Mouse property will make the icon display mouse button over keyboard if available.
Fit Mode property can be used for containers. Use Match Width for HBoxContainer and Match Height for VBoxContainer. If none work, use None mode and set minimum size manually.
You can use get_tree().call_group("action_icons", "refresh") to refresh all visible icons (in case you change the input bindings etc.)
Check the repo for more info and GIFs.