Releases: kirill-grouchnikov/radiance
Release 7.5.0
💔 marks an incompatible API / binary change
🎁 marks new features
🔧 marks bug fixes and general improvements
Component
- 💔 Revisit circular progress indicators
- 💔 Do not force BIG_FIT_TO_ICON presentation state for command buttons configured with custom icon dimension
- 🔧 Fix visuals of disabled command buttons under rollover state and
never
background appearance strategy - 🔧 Fix inconsistent font metrics of label texts during printing
- 🔧 Fix crash on computing the resize sequence of flow ribbon bands with 2 components
- 🔧 Fix ribbon band content disappearing after a certain combination of user interactions with the ribbon on Windows OS
Theming
- 💔 Revisit implementation details of older painters
- 🔧 Fix computation of foreground color for empty texts
- 🔧 Fix visuals of arrow icons of disabled components
Release 7.0.1
Fix for color chooser panels under high DPI mode
Release 7.0.0
💔 marks an incompatible API / binary change
🎁 marks new features
🔧 marks bug fixes and general improvements
Component
- 🎁 Add model-based label component
- 🎁 Support projecting radio buttons in the ribbon component
- 🎁 Customizable popup anchor bounds provider for command buttons
- 🎁 Customizable popup icons for command buttons
- 💔 Revisit the class hierarchy of commands and presentation models
- 💔 Revisit menu indication field in command button presentation model
- 💔 RTL-aware
Side
enum values - 🎁💔 Configurable number of derived color rows in color selector
- 🎁💔 Use dimension-based sizes for icons
- 💔 Clean up presentation model for ribbon galleries
- 🔧💔 Fix issues with ribbon taskbar content and context menu
- 🔧 Fix support for color selector commands in ribbon taskbar
- 🔧 Fix incorrect display in recent section of color selector popup menu
- 🔧 Fix group header visuals in color selector popup menu
- 🔧 Fix ribbon issues in the DSL wrappers
- 🔧 Remove the top spacer in ribbon application menu
Theming
- 🎁 Add
RadiancePanelTreeCellRenderer
- 🎁 Support customizable title pane buttons
- 🔧 Support high DPI displays in
ColorWheel
panel of color chooser
Release 6.5.0
💔 marks an incompatible API / binary change
🎁 marks new features
🔧 marks bug fixes and general improvements
Component
- 🎁 Add tri-state checkbox component
- 🎁 Add switch component
- 🎁 Migrate previously internal circular progress component to public API
- 🎁💔 Revisit layout configuration of command button panels. Support fixed-column and adaptive layout spec for row fill and column fill panels.
- 🎁 Support configurable content padding in command buttons and command button panels
- 🎁 Add more presentation model options for command button panels
- 🎁 Add presentation model for rich tooltips
- 🔧 Fix crash on displaying rich tooltips under Java 17+
- 🔧 Fix text wrap logic in command buttons under big presentation state
- 🔧 Fix vertical positioning of command button content under tile presentation state
- 🔧 Fix issues with command popup menus not closing in certain scenarios
Theming
- 🎁💔 Revisit configuration of popup content. Full documentation here.
- 🎁💔 Unify fill and highlight painters.
- 🎁💔 Revisit how specular fill painter is configured.
- 🔧 Fix crash in specular fill painter
- 🔧 Fix crash in table UI delegate
- 🔧 Fix crash in opening the window title pane menu
- 🔧 Fix crash in update font of a tree component
- 🔧 Fix incorrect offset of vertical scrollbars during scrolling
Kotlin extensions
- 🎁 Add indexed access operator overload for
ResourceBundle.getString
Release 6.0.1
Fix for #406
Release 6.0.0
💔 marks an incompatible API / binary change
🎁 marks new features
🔧 marks bug fixes and general improvements
Dependencies for core libraries
- Gradle: 7.2 ➡ 7.5.1
- Kotlin: 1.5.31 ➡ 1.7.10
- Kotlin coroutines: 1.5.2 ➡ 1.6.4
General
- 🔧💔 A new direct rendering model for all core and custom components in Radiance
- Instead of rendering components as multi-layer combinations of cached offscreen images, Radiance now uses direct rendering to the
Graphics
objects passed to the relevant UI delegates and painting methods - Use
RadianceCommonCortex.paintAtScale1x
for visuals that need to "fall" on exact pixels, line single-pixel borders, separators, etc
- Instead of rendering components as multi-layer combinations of cached offscreen images, Radiance now uses direct rendering to the
- 🔧 Remove all usages of java.security APIs (that are deprecated in Java 17 going forward)
Animation
- 🎁 New default animation pulse source that is based on the display refresh rate
Component
- 🎁💔 Unify fire action trigger logic for command buttons by replacing
CommandButtonPresentationModel.isFireActionOnRollover
andCommandButtonPresentationModel.isFireActionOnPress
with a singleactionFireTrigger
enum that has three values:OnRollover
to fire action on rolloverOnPressed
to fire action on pressOnPressReleased
to fire action on press release (the default)
- 🎁💔 Unify text action/popup click logic for command buttons by replacing
CommandButtonPresentationModel.isTextClickAction
andCommandButtonPresentationModel.isTextClickPopup
with a singletextClick
enum field that has two values:Action
to activate action on text clickPopup
to activate secondary content on text click
- 🎁💔 Revisit breadcrumb bar APIs
- Remove exception propagation APIs (they were no-op in any case since it wasn't wired)
- Remove index tracking in
BreadcrumbItem
(not wired to anything) - Switch
BreadcrumbBarCallBack
APIs fromStringValuePair
toBreadcrumbItem
- Also rename
getLeafs
togetLeaves
- Rename
BreadcrumbBarCallBack
to BreadcrumbBarContentProvider` - Rename
BreadcrumbBarModel
toBreadcrumbBarContentModel
- Add
BreadcrumbBarPresentationModel
and support icon filtering - Remove
StringValuePair
from the API surface altogether - Revisit the API surface of
BreadcrumbItem
- 🎁💔 Switch presentation models to use
BackgroundAppearanceStrategy
across all components. This applies toCommandButtonPresentationModel.setFlat
CommandButtonPresentationModel.Overlay.setFlat
CommandStripPresentationModel.setFlat
CommandPresentationModel.setFlat
- 🎁 Add single row resize policy to ribbon flow bands
- 🔧 Fix lost breadcrumb bar path after skin change
- 🔧 Fix separator drawing over the last text character in
MEDIUM
command buttons that don't display icons - 🔧 Command menus now toggle open and close on clicks
- 🔧 Fix issues with command popup menus not closing in certain scenarios
Theming
- 💔 Simplified visuals of tabbed panes
- Remove
SINGLE_FULL and DOUBLE_FULL
fromTabContentPaneBorderKind
. Apps that wish to draw border around the content area will need to do so explicitly. - Remove
RadianceSkin.setTabFadeStart
andRadianceSkin.setTabFadeEnd
and do consistent indication for the selected / rollover tab with no alpha fade gradient. - Consistent corner radius of tabs across all skins.
- Remove
- 💔 Clean up the signature of fill painters, removing
isFocused
(not used anywhere, and shouldn't be since the focus indication is painted separately) andhasShine
(specific toStandardFillPainter
visuals). - 🔧 Fix issues with various color chooser panels, including the correct wiring of the "Reset" button across all the panels
- 🔧 Fix incorrect bounds of maximized decorated frames on Windows
- 🔧 Fix inverted logic of
ComponentOrParentChainScope.setExtraWidgetsPresence
- 🔧 Fix null pointer exception in rollover button listeners
SVG transcoder
Release 5.0.0
New naming scheme for modules, packages, classes, methods.
Release 4.5.0
💔 marks an incompatible API / binary change
🎁 marks new features
🔧 marks bug fixes and general improvements
Dependencies for core libraries
- Gradle: 7.1 ➡ 7.2
- Kotlin: 1.5.10 ➡ 1.5.31
- Kotlin coroutines: 1.5.0 ➡ 1.5.2
Neon
- 💔 Rename
ResizableIcon
toNeonIcon
- 🎁 Implement color filtering on Neon icons
Substance
- 💔 Remove
ComponentStateFacet.EDITABLE
that was not used anywhere in the UI delegates - 🔧 Fix inconsistent rollover logic on table cells
Flamingo
- 🎁💔 Add reference to the ribbon as a parameter to all
OnShowContextualMenuListener
methods - 🎁💔 Align icon theming across all Flamingo components
- 🔧 Fix layout of command buttons in
TILE
layout under RTL - 🔧 Fix visuals of horizontal command button strips under RTL
- 🔧 Fix layout of anchored command buttons under RTL
- 🔧 Fix layout of command button popup content under RTL
- 🔧 Fix issues with updating ribbon gallery content
Photon
General
Release 4.0.0
💔 marks an incompatible API / binary change
🎁 marks new features
🔧 marks bug fixes and general improvements
Dependencies for core libraries
- Gradle: 6.6.1 ➡ 7.1
- Kotlin: 1.4.10 ➡ 1.5.10
- Kotlin coroutines: 1.3.9 ➡ 1.5.0
Substance
- 🎁 💔 Extended support for themed icons with
IconThemingStrategy
APIs - 🎁 💔 Combine never-paint and flat button config into
BackgroundAppearanceStrategy
APIs - 🎁 💔 Support for accent background fill color
- 🎁 💔 Extend the API to retrieve all Substance skins to also contain the full class name of each look-and-feel
- 🎁 💔 Switch menu gutter fill to alpha-based API
- 🎁 💔 Unified handling of colors for drawing separators and drag bumps
- 🎁 Added API to allow using custom color schemes for option pane icons
- 💔 Renamed
GENERAL
decoration area type toCONTROL_PANE
- 💔 Rename
StandardButtonShaper
toPillButtonShaper
- 💔 Remove tooltip drop shadows
- 🔧 Fix arrow / text / mark color for pressed states under Graphite skins
- 🔧 Fix combobox arrow color for rollover states under Graphite skins
Flamingo
- 🎁 Add support for keyboard accelerators on ribbon commands
- 🔧 Fix ribbon application menu border color on skin switch
- 🔧 Fix exception on skin switch when the ribbon application menu is not shown
- 🔧 Fix for various visuals on multi-monitor setup with different screen densities
- 🔧 Fix even-odd coloring of command button panel groups
- 💔 Tweak implementation of
FIT_TO_ICON
command button layout manager
Trident
- 💔 Rename
TridentConfig
toTridentCortex
Release 3.5.0
💔 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 - 💔 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