DayPilot Pro for Java 2025.4.8603

Release date: December 15, 2025

Features

  • [Calendar] Calendar image export now supports RTL.

Improvements

  • [Scheduler] DayPilot.Scheduler.rowMoveFireOnForbiddenTarget property added - sets whether onRowMove is fired for `args.position = "forbidden"`. Default value is `false`. (build 8602)
  • [Scheduler] DayPilot.Scheduler.rowDragHandleVisibility added ("Hover" | "Visible" | "TouchVisible". (build 8602)
  • [Gantt] DayPilot.Gantt.rowHeaderResizable added. (build 8602)
  • [Scheduler] DayPilot.Scheduler.onEventMoving can change shadow height using `args.height` (in pixels). (build 8602)
  • [Scheduler] DayPilot.Scheduler.onEventMoving only fired for modifier key state changes, not for all key presses (Scheduler). (build 8602)
  • [Scheduler] DayPilot.Scheduler.dragInProgress() detects row moving as well. (build 8602)
  • [Navigator] DayPilot.Navigator.select() terminates silently if the Navigator has been disposed already. (build 8602)
  • [Scheduler] DayPilot.Scheduler.rowHeaderResizable added. When set to `false`, the row header width canÔÇÖt be changed via drag-and-drop. (build 8602)
  • [Scheduler] DayPilot.Scheduler.rows.collapse(f) added - collapses selected rows (f returns boolean). (build 8602)
  • [Scheduler] DayPilot.Scheduler.onRowMoveStart event added (build 8602)
  • Bubble Bubble hides on "wheel" event to prevent an incorrect position. (build 8602)
  • [Scheduler] DayPilot.Scheduler.registerDropTarget(options) supports options.onDragEnter. (build 8602)
  • globalThis.__DayPilotDisableCssInjection supported (build 8602)
  • [Navigator] DayPilot.Navigator.eventEndSpec implemented ("DateTime" | "Date") (build 8602)
  • [Scheduler] DayPilot.Scheduler.makeDraggable(options): `options.onDragStart` fired for touch moving. (build 8602)
  • DayPilot.Menu.onShow(args) event: args.div stores the main context menu DOM element. (build 8602)
  • [Scheduler] Improved performance of progressive event rendering (Scheduler). (build 8602)
  • [Scheduler] Rendering of floating headers optimized (Scheduler). (build 8602)
  • [Scheduler] DayPilot.Scheduler.registerDropTarget() supports touch devices. (build 8602)
  • [Calendar] Active area `icon` and `symbol` properties supported during event image export (Calendar). (build 8602)
  • [Scheduler] DayPilot.Scheduler.makeDraggable(options) - options.tapAndHoldTimeout added (default: 0) (build 8602)

Fixes

  • [Calendar] Touch interaction with the Calendar prevented subsequent mouse-based event click and time range selection (fixed). (build 8602)
  • [Calendar] Selecting a cell without first moving the mouse threw an error ["Cannot read properties of undefined (reading 'x')"] - fixed (Calendar). (build 8602)
  • [Scheduler] Progressive rendering of margins triggered after scrolling even if there were no new events rendered in the viewport (Scheduler). (build 8602)
  • [Calendar] Position of column headers during Calendar image export fixed (incorrect top). (build 8602)
  • [Calendar] Second moving of an event to the same position resulted in resetting the top position to zero - fixed (Calendar). (build 8602)
  • [Scheduler] The minimum drag distance required for drag & drop event moving activation was ignored - fixed (Scheduler). (build 8602)
  • [Scheduler] Modifier key (Ctrl/Shift/Alt/Meta) + event click caused "Uncaught TypeError: Cannot set properties of undefined (setting 'overlapping')" error - fixed (Scheduler). (build 8602)
  • [Scheduler] Vertical progressive event rendering margin fixed (Scheduler). (build 8602)
  • [Scheduler] When snap-to-grid was disabled, dragging boxed events placed them at the wrong position - fixed (Scheduler). (build 8602)
  • [Calendar] Time range selection context menu activation using right mouse click was blocked after a touch event - fixed (Calendar). (build 8602)
  • [Scheduler] DayPilot.Scheduler.dynamicEventRenderingMarginX and dynamicEventRenderingMarginY correctly applied instead of dynamicEventRenderingMargin at all places. (build 8602)
  • [Calendar] Second tap on a single-cell selection created using a tap resulted in an invalid selection state - fixed (Calendar on touch devices). (build 8602)
  • [Scheduler] Time header bubble hides properly on mouseleave. (build 8602)
  • [Calendar] Position/width calculation fixed for active areas with `right` property during image export of Calendar events. (build 8602)
  • [Calendar] Event resizing using custom handles (active areas) fixed on touch devices (Calendar). (build 8602)
  • [Calendar] More defensive checking of the source event/div when displaying a bubble to prevent "Cannot read properties of null (reading 'data')" error in Calendar. (build 8602)
  • [Calendar] With `autoScroll` set to "Drag", scrolling stops correctly when the drag ends inside the active margin (Calendar). (build 8602)

Other Changes

  • License updated: registered address, clarifications (v20251015). (build 8602)