Currently, some skins treat the displayable flag a "preferred visibility". This may not be the correct interpretation. Arguably, a non-displayable component should simply be taken out of the flow, not made invisible.
Also, some skins currently respect the displayable flag that may not need to (e.g. WindowSkin).
We should eliminate this property and use a component's visibility instead. This is the approach taken by AWT. We should also review which containers are currently trying to respect "displayable" and remove this code where it doesn't make sense.