Empty input.getKeyName result in inputBinding makes it unclickable

Issue Description

Some keyboard buttons have empty text string returned by input.getKeyName. For example, my keyboard has a button with \ on it, located between left shift and z. It has code of 100. When I assign such button to inputBinding setting I can't re-assign it again, because the rendered setting has zero size and no where to click to:

image

And there's no way to remove that binding, except to use console commands to manually edit binding section. That's how it looks when bound to 'normal' key:

image

Suggested Solutions:

  1. make input.getKeyName return something, instead of empty string
  2. tweak bindingLabel in files/data/scripts/omw/input/settings.lua to detect empty strings and return something (key code?):

image

  1. add padded box to the binding text - at least there would be some place for user to click even if text is empty:

image

  1. add (optional?) reset button that would remove binding:

image

For any of the changes in points 2-4 I can send PR. Example of all 3 changes together:

image