Skip to main content

1.5.2 Release Notes

Release date: 22nd February 2023

1.5 Release Notes

New Features

  • Setup Render Script - Add a script that can affect the Render Queue Item itself before it starts.
  • Composition Reference names in the Scene Tree. If the layer names for Composition References (Pre-Comps) match the name of the original Composition in the Assets Window, renaming the Composition will also rename the Composition Reference (Pre-Comp) in the Scene Tree.


  • Measure Text Utility - An optimised method to output the bounding box of a string without rendering in the Viewport.


API Module

  • New modifier key support:
    • isAltHeld()
    • isShiftHeld()
    • isControlHeld()
    • isMetaHeld()
  • replaceGoogleSheet() - Replace an existing Google Sheet Asset with a different one.
  • setSelectedKeyframeIds() - Set the keyframe selection.
  • getAttributeFromKeyframeId() - Get the attribute path for a given keyframe.
  • getGuides() has been deprecated and replaced with getGuideInfo().
  • presentOpenFile() - Open and filter a dialogue window to load files.
  • presentSaveFile() - Open a dialogue window to save files.

Cavalry Module

  • boundingBox() - Return the bounding box of a path.
  • Font metrics:
    • fontExists() - Returns true if a font is available to Cavalry.
    • getFontFamilies() - Returns a list of all the font families available to Cavalry.
    • getFontStyles() - Returns a list of all the available styles for the given font family.
    • measureText() - Returns an object representing the bounding box of some text without the need to actually create a text shape.

UI Module

  • FlowLayout - a new layout where its content can reflow dependent on the layout's dimensions.
  • getUUID() - return a unique identifier for a widget.
  • New mouse event callbacks for the Draw and Container widgets:
    • onMousePress()
    • onMouseRelease()
    • onMouseDoubleClick()
    • onMouseMove(position)
  • Draw and Container have a new useHoverEvents() function.
  • New drag and drop functionality for Windows and Containers. See registerDragDropMimeType() and the callback functions:
    • onDragEnter()
    • onDragLeave()
    • onDrop()
  • runFileScript() - Run UI Scripts from within other UI Scripts.
  • New onClose callback.
  • New context menu features:
    • addMenuItem() - Add a context menu within a Window or Container.
    • addSubMenu() - Add a sub menu within a context menu.
    • showContextMenu() - Show a context menu within a Container or Window at the mouse location.
    • showContextMenuOnRightClick() - Automatically show the context menu at the mouse location on right click. This is only available in the ui module.
    • clearContextMenu() - Clear a context menu item. This can be used to update context menu items.
  • setBorder() for Container.

Render Module

  • renderQueueItem - Return the renderQueueItemId when rendering.


  • The String Array now has new options to output its longest or shortest string.
  • The Value Array now has new options to output its minimum, maximum or mean values.
  • All Arrays now have a Count attribute.
  • Layers that are created when making connections by right clicking in the Attribute Editor now no longer become children of the Layer being connected to. This is to try and prevent duplication of inputs when duplicating layers as a way to optimise scenes.
  • HSV Color now includes an Input Color.

Notable Bug Fixes

  • We've removed the auto-complete for a Stroke's Dash Pattern that had been causing issues.
  • A Viewport bug caused by the removal of the Silhouette Blend Mode in 1.5.1 has been resolved.
  • Points to Path now closes correctly when Bézier is unchecked.
  • You can now delete Compositions via the JavaScript API.