Modifying Color picker widget of a component with a AZ::Color field

I’ve written a custom component with a Color field; reflecting it to the edit context gets me a nice color picker widget.

However, I’d like to have a color field which includes an alpha channel; the widget doesn’t have a way to modify or even see the alpha channel.

I’ve looked for the source code for the color widget but could not find it. My assumption is that the color widget is precisely the one provided by Qt; the documentation of the color widget includes an example of what the Qt widget looks like, and it looks suspiciously like the one in LY, which seems to confirm my assumption.

However, that documentation page linked above states clearly that the Qt widget supports the picking of an alpha channel; it seems that the LY team chose not to expose this (very basic) functionality in LY.

Is there a way to create a derived (from AZ::Color) class whose UI widget will be the Qt widget but with an alpha channel picker? I assume this would be fairly involved. I do not wish to make modifications to any code shipped with LY, i.e. to have to change how AZ::Color itself is reflected (but please, do add this functionality in core LY code in a future release! - either by changing the UIHandler for Color or by adding an Attribute which enables the alpha picker).

Note: I can quite easily add this functionality by creating a class which wraps a color and an alpha channel (which can be selected through e.g. a spinner or slider) and provides these to the edit context; this is a huge hack, I have no desire to do this.