I see what you did. The WidgetAction acts as a container handling the shortcut. It is similar to a custom widget.
As you said, it seems over complicated, so I will keep it simple for now, maybe by manually showing the shortcut in both actions, or in its parent.