Color Selection


We need an improved design for how color selection/specification works across the OS.


William Jon McCann



  • Select a color to use for text
  • Select a color to use for a shape
  • Select color to use for a Calendar source
  • Select a color from a supplied set of defaults
  • Select a color that was used previously
  • Allow selecting color transparency (alpha)
  • Allow color customization


  • Determine a hex code for a color
  • Develop a palette from a base color?



Relevant Art

Mac OS X

iOS Calendar

Google Draw

Google Calendar




Tango Palette







Tentative Design



Don't you think a long press on a swatch for the custom is a bit too hidden? Why not a small Edit button? Even on my phone long press options are very undiscoverable (Android is moving away from that in a lot of places). Also, how do you remove a custom swatch? --hbons

I guess I'm a little later to the party here, but I needed a color picker for my game engine, was writing code for it, and noticed that GtkColorSelection had been deprecated in favor of GtkColorChooser (which this page apparently describes the genesis of). From our use case, at least, this is a major step backwards.

Part of the reason we need color pickers is for art tools. For those, the "box of recently used crayons" model is almost entirely useless, so effectively the new dialog has a view the artist must click past to get to the tool they actually need, and furthermore they must realize that the plus button will get them to that tool. Perhaps there's a way of bypassing the box of crayons?

I have to say, even when just using color pickers normally I never use the crayons; invariably it's an arbitrary set of colors none of which are quite what I want, and often none of which are even remotely close to what I want. The limited number of crayons means the customizable part of the list almost invariably gets flooded out, and whatever color you currently want has been pushed off the list by the colors you were using. It's the classic "buffer too small" LRU-discard thrash problem. It's also a throwback to the days of palletized video modes (cf: Windows 3.0 and the 20 reserved "system colors" assuming you had a vga card beefy enough to run in 256 color mode), and should long since have been discarded.

In addition to that, the "advanced" interface has significantly less convenient access to the channel values. I didn't even realize you could bring up numeric controls by right-clicking until I saw the screenshots on this page and started looking for ways of making them appear. I still haven't found any way of directly entering RGB values except via the "web" hex triplet, which is not very convenient in art tools.

What I'd like is some way to open the HSVA picker directly, along with a panel of controllable combo sliders, preferably covering both the RGB values, the HSV values, the alpha and the "web" hex color. It doesn't have to be the default view, but at least for art tools there needs to be some way of invoking it directly (such that a GtkColorChooserDialog can be brought up in that mode without fiddling with its guts unduly).

The blender example is just about ideal (as you'd expect, coming from an art tool) for our needs. --ToddShowalter

See Also

Design/OS/ColorSelection (last edited 2013-12-04 19:16:52 by WilliamJonMcCann)