For our JavaOne talk Claudine and I created a new JavaFX skin called Flatter. While AquaFX has it’s main focus on desktop applications running on a Mac, Flatter is made for touch and embedded devices.

Flatter is a skin that is as simple as it can be. There are no gradients or shiny effects in the skin of all the controls. Next to this the controls of flatter have a bigger appearance than all controls in the desktop skins. By doing so, they are prepared for touch. Here is a first screenshot of some of the default JavaFX controls skinned by Flatter:

controls

To take care of a good user experience on touch based devices, Flatter changed the behavior of some default controls. Using a default combobox by touch isn’t always easy. Because of this we changed the behavior and skin of the combobox and added a overlay where the data of the combobox is rendered in a special selection dialog. Here we found a way to provide a good UI and user experience for any combobox data. A developer doesn’t need to change anything. The complete behavior and UI is managed by Flatter:

combobox

Additionally Flatter will include some new controls and specialized skins. One example is the AvatarView. You can use this view in login dialogs for example, to show the picture of a user. AvaterView matches perfectly in the Flatter skin and will show every avatar images in a good way. No matter what ratio the image has, for example. Here is a picture of the new AvatarView:

avatarview

As I mentioned before we created some special skins. This skins can be used for default controls. The one that I will show here is the TagSkin for the Label. If you do some document tagging in your application you can use this skin to have your labels look like tags. The only thing you have to do here, is setting the Skin to your label. To make this even easier, Flatter will provide a facade like the one we introduced for AquaFX. Here is a preview of the tag skin:

tags

Flatter is still in progress, but we will open source it in the next weeks after JavaOne. You can find more information about Flatter in our “Let’s get wet” JavaOne presentation. So if you want a flat user experience stay tuned for this one ;)