- API to check whether current platform supports window decorations `FlatLaf.supportsNativeWindowDecorations()`
- API to toggle window decorations of all windows `FlatLaf.setUseNativeWindowDecorations(boolean)`
- `FlatClientProperties.USE_WINDOW_DECORATIONS` can now used to toggle window decorations for single window
- cleaned-up/fixed/simplified window decorations "enabled" checking:
1. if `FlatSystemProperties.USE_WINDOW_DECORATIONS` is set, its value is used
2. if `FlatClientProperties.USE_WINDOW_DECORATIONS` is set, its value is used
3. use value of UI default `TitlePane.useWindowDecorations`
- support customizing of window title alignment: left aligned or centered (default is left without embedded menubar and centered with embedded menubar)
- improved centering of window title with embedded menubar (issue #252)
- enabled by default (via UI property `TitlePane.useWindowDecorations`)
- dropped system property `flatlaf.useNativeWindowDecorations` and replaced with `flatlaf.useWindowDecorations`
- old functionality of system property `flatlaf.useWindowDecorations` removed
- default button: white background and wide border
- focused button: light blue background and thin border
(the light blue default button did not look beautiful IMHO)
- In "Flat Light" theme, changed styles of focused and default buttons to
avoid confusion with all other themes. Focused buttons now have a white
background (was light blue) and a slightly wider border. The default button
now has a light blue background (was white) and a thin border. In all other
themes the default button also has colored background.
- In "Flat Dark" theme, use slightly wider border for focused buttons.
- CheckBox and RadioButton: In "Flat Dark" theme, use blueish background for
focused components.
- paint non-wide selection in FlatTreeUI.paintRow() instead of using reflection to change private field in DefaultTreeCellRenderer
- use DefaultTreeCellRenderer.getBackgroundSelectionColor() as selection color (if possible)
- added boolean client property JTree.paintSelection to disable selection painting in FlatTreeUI.paintRow()
- FlatComponents2Test:
- added checkboxes for wideSelection and paintSelection client properties
- added possibility to test various kinds of tree cell renderers
- added JXTree, JIDE CheckBoxTree
(PR #245)
Also changed auto-inverse threshold from 50% to 65% for increase and 35% for decrease, because this gives much better results for slider hover and pressed colors. This does not change other colors in core themes, but few colors in some IntelliJ themes (usually checkbox hover/pressed).