Radiance 3.5.0
It gives me great pleasure to announce the fifth major release of Radiance. 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
Dependencies for core libraries
- Gradle from
6.4.1
to6.6.1
- Kotlin from
1.3.72
to1.4.10
- Kotlin coroutines from
1.3.7
to1.3.9
Substance
- 💔 Remove support for watermarks
- 💔 Convert
SubstanceSkin.ColorSchemes
into an interface - 😻 Support for overlay colors with
SubstanceSkin.setOverlayColor
- 💔 Support for specifying derived colors in color scheme files
- 😻 New API to mark a label as title pane text
- 😻 Text highlights that respect decoration areas
- 💔 Moved the Green Magic skin from
substance-extras
to the coresubstance
module (see the screenshot of this skin above) - 💔 Aligned signatures of
ComponentState.getActiveStates
andComponentState.getAllStates
- 🤷♀️ Improved menu search widget UX
- 🤷♀️ Correct layout for edit context menu under RTL
- 🤷♀️ Fix concurrent modification exception thrown when ghost icon animations are enabled
Flamingo
- 💔 Pass command projection instead of command in ribbon contextual menu listener
- 💔 Remove
AbstractCommandButton
class. Everything is in theJCommandButton
class now. - 😻 New
CommandButtonPresentationModel.Builder.setPopupHorizontalGravity
API to contol horizontal alignment of command button popups - 🤷♀️ Fix crash in opening a command popup menu from taskbar
- 🤷♀️ Fix memory leaks caused by model listeners
- 🤷♀️ Fix for root key tip chain not showing popup key tips of anchored commands
- 🤷♀️ Fix for overlays on ribbon popup content in the title pane / taskbar
Trident
- 🤷♀️ Fix inconsistent usage of conversion from duration fraction to timeline position
This release has mostly been focused on stabilizing and improving the overall API surface of the various Radiance modules. There’s still a long road ahead to continue exploring the never-ending depths of what it takes to write 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. And don’t forget that all of the modules require Java 9 to build and run.