2.16 - Alegria Geral
🚀 Epics and highlights
- WebGL rendering (beta) user preference
- Design Tokens at the design tab: numeric fields with token selection in place
✨ New Features & Enhancements
- Add delete group to assets panel context menu (by @FairyPigDev)
- Show alpha percentage on library color values (by @rockchris099)
- Add clear artboard guides to frame context menu (by @eureka0928)
- Add loader feedback while importing and exporting files (by @moorsecopers99)
- Allow duplicating color and typography styles (by @MkDev11)
- Add woff2 support on user uploaded fonts (by @Nivl)
- Import Tokens from linked library (by @dfelinto)
- Option to download custom fonts (by @dfelinto)
- Add copy as image to workspace context menu (by @dfelinto)
- Add Tab/Shift+Tab navigation to rename layers sequentially (by @bittoby)
- Copy and paste entire rows in existing table (by @bittoby)
- Rename token group
- Duplicate token group
- Copy token name from contextual menu
- Add drag-to-change for numeric inputs in workspace sidebar (by @RenzoMXD)
- Add CSS linter
- Add per-group add button for typographies (by @eureka0928)
- Add Find & Replace for text content and layer names (by @statxc)
- Use page name for multi-export ZIP/PDF downloads (by @Dexterity104)
- Make links in comments clickable (by @eureka0928)
- Add visibility toggle for strokes (by @eureka0928)
- Sort asset library subfolders alphabetically at every nesting level (by @eureka0928)
- Add Paste to replace (Cmd+Shift+V) for selected shapes (by @eureka0928)
- Differentiate incoming and outgoing interaction link colors (by @claytonlin1110)
- Reorder prototyping overlay options to show Position before Relative to (by @rockchris099)
- Add customizable colors for ruler guides (by @Dexterity104)
- Persist asset search and section filter across sidebar tabs (by @eureka0928)
- Add delete and duplicate buttons to typography dialog (by @eureka0928)
- Edit ruler guide position by double-clicking the guide pill (by @eureka0928)
- Add search bar to color palette (by @eureka0928)
- Add search bar to board size presets (by @eureka0928)
- Allow customising the OIDC login button label (by @wdeveloper16)
- Add page separators in Workspace
- Preserve vector content when pasting SVG from external tools (by @RenzoMXD)
- Add pixel grid color picker in viewport settings (by @jack-stormentswe)
- Add HEX/HSB/HSL support to color picker with persistent model switcher (by @edwin-rivera-dev)
- Show specific invitation-link error messages (by @niwinz)
- Show detailed file import error messages (by @jsdevninja)
- Add read-only preview mode for saved versions (by @wdeveloper16)
- Add clipboard read/write permissions to the plugin system (by @wdeveloper16)
- Update auth hero illustration on login screen
- Update Open Graph link preview metadata
- Restore deleted team files in bulk instead of per file (by @Dexterity104)
- Preserve Inkscape labels when pasting SVGs (by @jeffrey701)
- Add Alt+click to expand layer subtree (by @MilosM348)
- Allow deleting the profile avatar after uploading (by @moorsecopers99)
- Clarify self-hosted OIDC configuration for containerized deployments (by @sancfc)
- Update User Guide with 2.16 features (by @myfunnyandy)
- Improve file validation performance and fix orphan shape detection

🐛 Bugs fixed
- Add Shift+Numpad aliases for zoom shortcuts (by @RenzoMXD)
- Save and restore selection state in undo/redo (by @eureka0928)
- Add guide locking and fix locked element selection in viewer (by @Dexterity104)
- Add natural sorting on token names
- Fix warnings for unsupported token $type (by @Dexterity104)
- Apply styles to selection (by @AzazelN28)
- Fix Alt/Option to draw shapes from center point (by @offreal)
- Fix library update button freezing
- Fix typo in subscription settings success key (by @jack-stormentswe)
- Add token name on broken token pill on sidebar
- Fix tooltip activated when tab change
- Fix title on shared button
- Fix hover on layers
- Fix highlight after name edition
- Fix multiple small UI bugs — id prop, update copy, library modal scroll
- Fix themes modal height
- Fix layers panel rename showing default type name (by @jack-stormentswe)
- Suppress browser context menu on workspace sidebar right-click (by @sujyotraut)
- Fix plugin API fileVersion.restore() hanging on failure (by @thomascolden585-svg)
- Fix stroke-only SVG paths losing rounded join on split (by @Chrissi2812)
- Fix plugin API library.connectLibrary() not returning Promise (by @boskodev790)
- Fix LDAP provider schema typo in malli migration (by @boskodev790)
- Fix login-with-ldap dropping error on uninitialized LDAP (by @boskodev790)
- Fix OIDC_USER_INFO_SOURCE flag being ignored (by @GeekClassy)
- Fix share-link viewer crash on malformed email (by @boskodev790)
- Fix crash pasting component variants from external library (by @FairyPigDev)
- Remove corepack from MCP launcher for Node.js 25+ (by @TheAifam5)
- Fix Copy as SVG for multi-shape selections (by @RenzoMXD)
- Preserve OpenType variant name table for custom fonts in the dashboard (by @rutherfordcraze)
- Add export panel to inspect styles tab
- Fix styles between grid layout inputs
- Fix dates to avoid show them in english when browser is in auto
- Fix focus radio button
- Token tree should be expanded by default
- Fix opacity incorrectly disabled for visible shapes
- Fix plugin modal drag over iframe and close button (by @marekhrabe)
- Fix hot update on color-row on texts
- Fix selected color tokens
- Fix dashboard Recent/Deleted titles overlapped by scrolling content (by @rockchris099)
- Display resolved values of inactive tokens
- Fix hyphens stripped from export filenames (by @jamesrayammons)
- Fix app crash on multiselection with hidden shapes and opacity mixed value
- Fix gap input throwing an error
- Fix copy to be more specific
- Fix incorrect rendering when exporting text as SVG, PNG and JPG (by @edwin-rivera-dev)
- Fix typography style creation with tokenized line-height (by @juan-flores077)
- Fix colorpicker layout hiding eyedropper button
- Fix restore-deleted-team-files reduce typo (by @Dexterity104)
- Fix internal error on layer prev/next sibling selection (by @jsdevninja)
- Fix tooltip appearing two times when nested elements
- Fix broken update library notification link in the UI
- Fix plugin API ShapeBase.component() returning outermost instead of immediate component
- Fix content attribute sync group resolution by shape type
- Fix plugin parse-point returning plain map instead of Point record (by @FairyPigDev)
- Fix :heigth typo in clipboard frame-same-size? (by @iot2edge)
- Fix Settings Update button enabled state (by @moorsecopers99)
- Fix library updates reappearing after reload
- Fix dependency libraries visible after unlinking main library
- Fix internal error on margins
- Remove drag-to-change when token applied on numeric input
- Fix extra input on canvas background
- Fix frame selection highlight persists after rename
- Fix several color picker issues
- Fix asset icon broken on Asset tab
- Fix text fill color stops updating in multiselect with texts
- Fix editing a legacy text element silently detaches its color token
- Fix token application to grid paddings
- Fix file crashing when switching a variant
- Fix set activation after renaming
- Fix font selection position hiding available fonts
- Fix numeric input changes not saved when clicking on viewport
- Fix resize cursor appearing on login and register buttons
- Fix version restore restoring first previewed version instead of selected one
- Fix incorrect error message when applying tokens while editing text
- Fix standalone tokens ordering separated from token groups
- Fix delete invitation modal readability in light theme
- Fix team invitation not automatically accepted after account validation
- Fix design tokens vanishing from the sidebar when a token name collides with a token-group prefix from another active set (e.g. a in one set and a.b in another); the colliding token is now kept and rendered as a broken pill.