This is a bug fix release. Users of FlatLaf 2.0 are recommended to update to this release because it fixes a memory leak.
Change Log
Fixed memory leak in Panel, Separator and ToolBarSeparator. (issue #471; regression in FlatLaf 2.0)
ToolTip: Fixed wrong tooltip location if component overrides
JComponent.getToolTipLocation() and wants place tooltip under mouse location. (issue #468)
Extras: Added copy constructor to FlatSVGIcon. (issue #465)
Moved module-info.class from META-INF\versions\9\ to root folder of JARs. (issue #466)
2.0
Highlights
Styling individual components using string in CSS syntax (see PR #341 and #388)
CheckBox and RadioButton improvements (see PR #414)
Incompatibilities
If you're using own FlatLaf properties files, then you may be affected by some incompatible changes.
See PR #390 and #414.
Change Log
New features and improvements
Styling:
Styling individual components using string in CSS syntax or java.util.Map. (PR #341)
E.g.: mySlider.putClientProperty( "FlatLaf.style", "trackWidth: 2" );
Style classes allow defining style rules at a single place (in UI defaults)
and use them in any component. (PR #388)
E.g.: mySlider.putClientProperty( "FlatLaf.styleClass", "myclass" );
Typography defines several font styles for headers and various text sizes,
which makes it easy to use consistent font styles across the application. (PR #396)
Native window decorations (Windows 10/11 only):
Unified backgrounds for window title bar is now enabled by default (window
title bar has now same background color as window content). Bottom separator
for menu bars is no longer painted (if unified background is enabled).
Show Windows 11 snap layouts menu when hovering the mouse over the maximize
button. (issues #397 and #407)
Fixed memory leak in Panel, Separator and ToolBarSeparator. (issue #471;
regression in FlatLaf 2.0)
ToolTip: Fixed wrong tooltip location if component overrides
JComponent.getToolTipLocation() and wants place tooltip under mouse
location. (issue #468)
Extras: Added copy constructor to FlatSVGIcon. (issue #465)
Moved module-info.class from META-INF\versions\9\ to root folder of JARs.
(issue #466)
2.0
Added system property flatlaf.nativeLibraryPath to load native libraries
from a directory. (PR #453)
Fixed "endless recursion in font" exception in
FlatLaf$ActiveFont.createValue() if UIManager.getFont() is invoked from
multiple threads. (issue #456)
PasswordField: Preserve reveal button state when switching theme. (PR #442;
issue #173)
PasswordField: Reveal button did not show password if
JPasswordField.setEchoChar() was invoked from application. (PR #442; issue
#173)
Slider: Fixed/improved focused indicator color when changing accent color. (PR
#375)
TextField:
Improved hover/pressed/selected colors of leading/trailing buttons (e.g.
"reveal" button in password field). (issue #452)
Clear button no longer paints over round border. (issue #451)
Extras: Fixed concurrent loading of SVG icons on multiple threads. (issue
#459)
Use FlatLaf native window decorations by default when running in
JetBrains Runtime
(instead of using JetBrains custom decorations). System variable
flatlaf.useJetBrainsCustomDecorations is now false by default (was true
in FlatLaf 1.x). (issue #454)
Native window decorations:
Fixed blurry iconify/maximize/close button hover rectangles at 125%, 150% or
175% scaling. (issue #431)
Updated maximize and restore icons for Windows 11 style. (requires Java
8u321, 11.0.14, 17.0.2 or 18+)
Updated hover and pressed colors of iconify/maximize/close buttons for
Windows 11 style.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps flatlaf from 1.0 to 2.0.1.
Release notes
Sourced from flatlaf's releases.
... (truncated)
Changelog
Sourced from flatlaf's changelog.
... (truncated)
Commits
df6256d
release 2.0.1c27db56
moved module-info.class from META-INF\versions\9\ to root folder of JARs (iss...97bed85
FlatSVGIcon: added copy constructor (issue #465)751c0e1
ToolTip: fixed wrong tooltip location if component overrides `JComponent.getT...936de60
fixed memory leak in Panel, Separator and ToolBarSeparator (issue #471)f6b64d4
Merge PR #463: Updating MegaMek Suite Informationb043da7
Updating MegaMek Suite Information7e47cc2
updated sigtest for FlatLaf 2.0b8b45f9
Theme Editor: added to main readme66337f9
release 2.0Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)