
JavaFX 26 is Now Available
We are pleased to announce the official release of JavaFX 26. This milestone marks another significant step forward for the ecosystem, delivering a robust suite of new features ranging from modern rendering pipelines to highly requested developer APIs. This release reflects the continued commitment of the OpenJFX community to providing a high-performance, hardware-accelerated UI framework for the Java ecosystem.
Important Requirements & Changes
Minimum JDK 24 Required
Starting with JavaFX 26, the library is compiled with --release 24. This means you must use JDK 24 or later to run your applications. Attempting to use an older JDK will result in a startup error indicating that the javafx.base module cannot be read. While JDK 24 is the minimum, we recommend JDK 26 for the best experience.
macOS Window Behavior
We have refined how “owned” windows behave on macOS. Previously, child windows would move automatically with their owner, which often caused them to disappear when moved to secondary screens. This behavior has been changed to match Windows and Linux, ensuring a consistent, predictable cross-platform experience.
New Features and API Highlights
Headless Platform Prototype: Streamlining CI/CD
A highly anticipated addition in JavaFX 26 is the Headless platform prototype. For years, running JavaFX applications in environments without a display—such as Docker containers or cloud-based CI/CD runners—required complex workarounds like Xvfb. This new native headless glass platform allows JavaFX to run without a graphical environment.
This is a game-changer for automated testing. You can now execute UI tests, perform server-side node snapshotting, or run data-heavy scene graph calculations on headless servers with significantly less overhead. To experiment with this feature, simply launch your application with the flag -Dglass.platform=headless.
Modern Graphics: macOS Metal Pipeline
A major milestone in this release is the implementation of the macOS Metal Rendering Pipeline. This transition away from OpenGL ensures better graphics performance and compatibility with modern Apple hardware and future versions of macOS.
Rich Text & UI Enhancements
The RichTextArea control introduced in previous versions has received significant updates:
-
New
insertStylesProperty: More control over how styles are applied during text insertion. -
Paragraph Formatting: Enhanced
RichParagraphsupport for better document-level layout. -
IME Support: Improved input method editor support for complex character entry.
Developer API Improvements
-
Efficient List Updates: The new
ObservableList.replaceRange(int from, int to, Collection col)method allows for bulk replacements, reducing the overhead of multiple individual list operations. -
Extended Dialogs: Dialogs now support
StageStyle.EXTENDED(Preview), allowing them to blend seamlessly with modern window decorations. -
Easing Functions: A new piecewise linear easing function has been added to the animation toolkit for more precise motion control.
Under the Hood: Stability and Security
The community resolved over 80 bugs in this cycle. Key fixes include:
-
Memory Leaks: Resolved leaks in
XYChartandSortedList. -
Swing Integration: Fixed several
NullPointerExceptionsinJFXPanelandSwingNode. -
Layout Fixes: Corrected issues where
GridPanerendered extra gaps for unmanaged rows/columns.
Updated Dependencies
To ensure security and performance, we’ve updated several core native dependencies, including WebKit 622.1, SQLite 3.50.4, and GStreamer 1.26.5.
Securing the Future of Your Application
In a perfect world, keeping a tech stack current is as simple as bumping a version number. But for mission-critical applications, “just upgrading” isn’t always an option. Security doesn’t “just happen”—as the framework evolves, vital security patches found in new releases must be surgically backported to the stable environments your business relies on. This “Art of the Backport” is the heavy lifting we do at Gluon to prevent security erosion in your LTS deployments.
Furthermore, we know that hitting a complex framework bug can cost your team weeks of trial-and-error. Why lose that productivity when you can work with the people who build the framework? Whether it’s through our Long Term Support (LTS) tiers or our expert Time & Materials consulting, Gluon provides the safety net your project needs. Our subscribers directly fund the “security engine” of JavaFX, ensuring that patches are backported, builds are validated, and your foundation remains rock-solid.
You can find the full list of changes in the
