Radiance 9.0.0
July 31st, 2026
![]()
I’m pleased to announce the next major release of Radiance. The two main themes of this release are:
- Expanding on the foundational work of the previous releases around color tokens, painters and shapers
- The introduction of a brand new skin, Blueprint (image above)
Let’s get to what’s been fixed, and what’s been added. First, I’m going to use emojis to mark different parts of it like this:
💔 marks an incompatible API / binary change
🎁 marks new features
🔧 marks bug fixes and general improvements
Theming
- 🎁 💔 Introduction of component shapers that replace the previously available button shapers and expand the scope to all components
- 🎁 💔 Revisit the API surface of decoration and overlay painters, folding the overlay painters to be managed by decoration painters, and introducing the brand new inlay painters
- 🎁 💔 New marker-on-container color tokens, replacing the
SEPARATORtoken association kind - 🎁 Add Blueprint skin
- 🎁 Unified visuals of tabs and newly added tab decorators that allow custom visuals of tabs, migrating the ribbon task toggle buttons to be painted by tab decorators
- 🎁 Skin-level window decorators
- 🎁 Alphas for color tokens under enabled states
- 🎁 New shadow color token, migrating all drop shadows to use it
- 🎁 Additional customization options for title panes for button icons and title texts
- 🔧 Migrate image / icon filtering to be driven by Chroma tonal palettes
- 🔧 Revisit the visuals of slider thumbs
- 🔧 Fix the visuals of highlights to properly account for offsets
- 🔧 Fix the visuals of selected password field dots
- 🔧 Fix the visuals of tree expand / collapse icons
- 🔧 Fix the visuals of indeterminate vertical progress bars
- 🔧 Fix the visuals of the ribbon under skins that use the matte decoration painter
- 🔧 Fix incorrect handling of icon alpha channels
- 🔧 Consistent width handling for tree cell renderers
- 🔧 Tweak the default insets of toolbars
- 🔧 Fix enabled state of window menu bar items
Component
- 🔧 Fix the display of the popup action icon of ribbon anchored commands with no icons
- 🔧 Use the HCT color space for color derivation in color selector command menus
- 🔧 Fix inconsistent size of ribbon task toggle buttons under skins that use the
PillComponentShaper
Radiance focuses on helping you make elegant and high-performing desktop applications in Swing. If you’re in the business of writing just such apps, I’d love for you to take this Radiance release for a spin. Click here to get the instructions on how to add Radiance to your builds.