Skip to main content
Version: 4.2

JointJS+ Changelog v4.2.3

dia​

Paper​

dia.Paper – fix to handle element removal during pointer events​

Fix an issue where removing an element from the graph during a pointer event (e.g. inside a pointerdown or pointermove handler) could cause an error or leave the paper in an inconsistent state.


Graph​

dia.Graph – fix to pass options to batch:start and batch:stop events consistently​

Fix an inconsistency where options passed to batch operations were not forwarded to the batch:start and batch:stop events in all code paths.


CommandManager​

dia.CommandManager – fix handling of change commands for cells removed by a prior undo​

Fix an edge case where undoing a batch that contained both an add and a change command for the same cell would throw an error.

When the add command was undone first (removing the cell from the graph), the subsequent undo of the change command could not find the cell and threw: "Trying to perform a 'change' action on a cell that is not present in the graph."

The CommandManager now gracefully skips change commands whose target cell has already been removed by an earlier undo in the same batch.


mvc​

Model​

mvc.Model – fix to trigger changeId event only when the ID actually changes​

Fix an issue where the changeId event was fired even when the new ID was identical to the previous one. The event is now only triggered when the ID value genuinely changes.


Vectorizer​

Vectorizer – fix getTransformToElement() when the target node is inside a nested SVG document​

Fix an issue where getTransformToElement() returned an incorrect transform matrix when the target node was contained inside a nested <svg> element rather than at the top-level SVG document.


ui​

Halo​

ui.Halo – fix to use joint-selector attribute when building the magnet link end​

Fix an issue where the Halo was using its own simplified logic to resolve a link end from a magnet element, ignoring the joint-selector attribute set by the element view.

The Halo now delegates to CellView.prototype.getLinkEnd() to build the link end, ensuring that the joint-selector attribute is honoured and custom link-end resolution logic defined on the view is respected.


ui.Halo – fix to quote icon URLs in CSS background-image​

Fix an issue where Halo handle icons were set as unquoted url(...) values in the CSS background-image property.

Unquoted URLs can break when the path contains spaces or special characters. The URL is now always wrapped in double quotes: url("...").


Selection​

ui.Selection – fix to quote icon URLs in CSS background-image​

Fix the same unquoted URL issue in the Selection component. Handle icons set via the icon option are now rendered with a properly quoted url("...") value.