Skip to content

2026.10.28

Choose a tag to compare

@Valkryst Valkryst released this 29 Oct 17:59
· 22 commits to master since this release

Breaking Changes

  • Removed VEditorPane, VPasswordField, VTextArea, VTextField, VTextPane.
    These component subclasses are no longer needed. Replace any usage with their standard Swing counterparts (JEditorPane, JPasswordField, etc.) — the LAF now applies high-quality rendering hints to all components automatically.

New Features

Per-component rendering quality control

High-quality RenderingHints (antialiasing, bicubic interpolation, etc.) are now applied automatically to every component rendered by the VTerminal LAF. No subclasses or manual setup required.

The behaviour can be controlled at two levels:

  • Global default (enabled by default):

    VTerminalLookAndFeel.enableHighQualityRendering(false); // disable for all
    VTerminalLookAndFeel.enableHighQualityRendering(true);  // re-enable
  • Per-component override (takes precedence over the global default):

    component.putClientProperty(VTerminalLookAndFeel.HIGH_QUALITY_RENDERING_KEY, Boolean.FALSE);
    component.putClientProperty(VTerminalLookAndFeel.HIGH_QUALITY_RENDERING_KEY, null); // revert to global

Bug Fixes

  • Multi-monitor black tile fix (VFont).
    Font tiles cached as VolatileImage now detect lost contents and recreate the image, resolving the issue where tiles rendered as black rectangles after dragging a frame between monitors. VolatileImage conversion (for hardware acceleration) is now also unconditionally attempted, with a BufferedImage fallback if creation fails.

Dependencies

Dependency From To
lombok 1.18.42 1.18.46
caffeine 3.2.2 3.2.4
junit-jupiter-engine 5.13.4 6.1.3
junit-jupiter-params 5.13.4 6.1.3
mockito-core 5.20.0 5.23.0
maven-compiler-plugin — 3.15.0
maven-surefire-plugin 3.5.3 3.5.6
jimfs 1.3.1 1.3.2