Change Log
New features and improvements
- Added support for Oklab and linear sRGB color spaces to color functions
mix(),tint()andshade(). (PR #1132, issue #1109) - Theme Editor: Added preview for color functions. (see PR #1132)
- macOS:
- In full window content mode, FlatLaf now automatically detects Swing components in title bar area that
process mouse events and excludes them from processing by macOS. Client
propertyJComponent.titleBarCaptionnow also works on macOS. (PR #1124, issue #1011) - Add support for
Cmd+BackspaceandCmd+Deleteshortcuts to text components. (PR #1142, issue #1095)
- In full window content mode, FlatLaf now automatically detects Swing components in title bar area that
- Publish Maven/Gradle BOM (Bill of Materials) to Maven Central. Artifact ID is
flatlaf-bom. (issue #1146) - Menus: On Windows, when a screen reader (e.g. NVDA) is running, activating the
menu bar withAltorF10keys now also shows the popup of the first menu.
Otherwise, the screen reader would not announce the menu bar. (issue #1093) - Slider: Added UI values
Slider.trackArcandSlider.thumbArcto customize
track and thumb corner diameter. (issue #1041) - SplitPane: Support placing one-touch buttons in the center or at the end of
the divider via UI propertySplitPaneDivider.oneTouchButtonsPlacement
(leading,centerortrailing). (issue #1116) - Tree: Use selection foreground color for expanded, collapsed, leaf, closed and
open icons of selected rows (if wide selection is enabled). (issue #925) - CheckBox and RadioButton: Support translating the icon via styles
icon.xOffsetandicon.yOffset(e.g. to align a scaled icon withicon.scale). (PR #1067) - System File Chooser:
- Support selection mode
FILES_AND_DIRECTORIESon macOS (in Open dialogs).
On other platforms, it behaves likeFILES_ONLY. (PR #1157) - Added UI property
SystemFileChooser.preferredAppearanceto control
preferred appearance of system file dialog on macOS and Linux (flatlaf,light,darkorsystem).
- Support selection mode
- SwingX: Added styling support to
JXBusyLabel,JXDatePicker,JXHyperlink,
JXMonthView,JXTaskPane,JXTipOfTheDayandJXTitledPanel. (PR #1166, issue #1165) - Extras: UI Inspector: Added
FlatInspector.addInfoProvider()to allow
applications to add custom rows to the UI inspector tooltip. (issue #1123) - Added
FlatMatteBorder, which is similar toMatteBorderbut supports HiDPI scaling/painting. (issue #1114) - Borders in UI defaults and styles: Added border functions
empty(top,left,bottom,right),
line([top,left,bottom,right,][lineColor[,lineThickness[,arc]]])and
matte(top,left,bottom,right,matteColor). Multiple functions separated by
commas build a compound border (first function is outermost border), e.g.
line(#f00), empty(4,8,4,8). Border class names with constructor parameters
(e.g.com.myapp.MyBorder(1,0,0,0,#f00)) now also works. (issue #1114)
Fixed bugs
- System File Chooser:
- Linux: Fixed deadlock when invoking
java.awt.Desktopmethodsopen(),
browse()ormail()after aSystemFileChooserwas shown at some point prior. (issue #1158) - Fixed application hang when dragging files from the system file dialog into
an application window (on macOS). Also fixed unusable modal dialogs shown
from a drop handler while the system file dialog is open. (PR #1156) - On macOS and Linux, do not request light/dark appearance for system file
dialog if current L&F is not FlatLaf (e.g. Aqua). (issue #1162) - macOS:
Cmd+X(Cut),Cmd+C(Copy),Cmd+V(Paste),Cmd+Z
(Undo) andCmd+Shift+Z(Redo) did not work in text fields of file dialog. (issue #1164)
- Linux: Fixed deadlock when invoking
- ColorChooser: Do not use rounded border for color palette boxes. (issue #1150)
- FileChooser:
- ScrollPane: When using rounded border and scrollpane width was near view
width, then the horizontal scrollbar was shown even when it was not necessary. (issue #1135) - Spinner: For button style
mac(used in macOS themes), it is now possible to
use rounded corners by setting UI propertyTextComponent.arcor styling (e.g.arc: 4). (issue #1151) - TabbedPane: Titles of disabled tabs were not grayed out if title contains HTML. (issue #1143)
- Table: Fixed gaps (in table background color) between cells and grid lines
when grid lines are shown and intercell spacing is 1 or 2, on Windows with
scale factors 125%, 150%, 175%, etc. (issue #581) - Make sure that
META-INF/MANIFEST.MFis first jar entry, so that tools that
useJarInputStreamreaders seeMulti-Release: true. (issue #1139) - Windows 11: Fixed missing popup borders in VMs without 3D acceleration and in
remote sessions. (issues #968 and #1101) - macOS 27: Screen menu bar (
apple.laf.useScreenMenuBar=true) showed only the
Apple menu and the application menu, but no Java menus, until hovering the
menu bar or switching to another application and back. This is a macOS issue,
which also occurs without FlatLaf, when the menu bar is installed a bit "late"
after application launch. FlatLaf now forces a redraw of the screen menu bar
(requires FlatLaf native library). (PR #1154, issue #1153) - macOS 26: Disabled window animation of heavy weight popups, which made popup
menus and tooltips look "wobbly" when they appear. (issue #1161) - Native libraries: Fixed
IllegalArgumentException: URI has an authority component
trying to load native library when running application from a Windows network drive. (issue #1145) - Extras:
FlatSVGIcon: Fixed wrong color when SVG usesfill="currentColor". (issue #1144)