keybinding widget: Fix initial un-set state, refactor