Color based widgets enhancements / introduction

Please review color widgets.
Yes, it's to show to the user that the current typed string is not a valid color.