Commit Graph

2688 Commits

Author SHA1 Message Date
Keavon Chambers bd1c54907d
Rename nodes from "Instance ___" -> "Read ___" and "Instance Map" -> "Map Vector" (#3792)
* Rename nodes from "Instance ___" -> "Read ___" and "Instance Map" -> "Map Vector"

* Update leftover references and demo artwork

* Simplify logic

* Fix test
2026-02-20 08:52:36 +00:00
Keavon Chambers da278e0264 New node: Map Points
Also resolves #3217
2026-02-19 14:37:35 -08:00
Keavon Chambers 258748ec51
Swap the default placement order of Fill and Stroke nodes in layers (#3789) 2026-02-19 13:15:11 -08:00
Timon 3f999bf231
Desktop: Add "Disable UI Acceleration" to preferences (#3774)
* Deskltop: Add Disable UI Accelaration preference

* Fixup

* Fix typo

* Code review and update strings

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-19 01:54:01 +00:00
Keavon Chambers 6824f55929 Add hover style to checkboxes when their corresponding labels are hovered 2026-02-18 17:37:34 -08:00
Dennis Kobert e1357c5c34
Improve CI times and make merge queue only trigger one CI run (#3755)
* Split ci job into multiple jobs running on github runners

* Add permission to build steps

* Try running rust build on selfhosted runner

* Disable nix setup for self hosted runner

* Revert build and only run lint + web build + rust fmt on gh runners

* Only build rust tests and ignore branding for frontend lint

* Provide stub ts types for running linter without building wasm bundle

* Manually install wasm-opt + use cargo-binstall

* Only build with shaders for master builds

* Revert splitting of lint job

* Attempt to build with shaders

* Explicitly install linux target

* Move frontend build back to self hosted runner

* Remove whitespace changes

* Remove explicit build step
2026-02-18 22:22:47 +00:00
Ayush Amawate 9bf3605b85
Add F2 shortcut for renaming the selected layer (#3641)
* add keyboard shortcuts for renaming layers

* apply reviewed suggestions

* Add todo comment

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-18 12:05:04 +00:00
Kulcode b433ddd007
Add button in Properties panel to select the node connected to an exposed parameter (#3720)
* Navigation-Shortcut

* Fix as rec

* cleanup

* Update labels

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-18 10:25:02 +00:00
Keavon Chambers 5d5993bcca
Fix opacity not being included in alpha of Fill type when converted from Table<Color> (#3785)
* Fix opacity not being included in alpha of Fill type when converted from Table<Color>

* Avoid unwrap, I guess
2026-02-18 09:21:02 +00:00
Jatin Bharti e5827f2b81
Fix crash opening File > Export if it previously was set to the bounds of a now-deleted artboard (#3577)
fix : Crash loading export dialogue
2026-02-17 23:24:13 -08:00
Aniket giri f801ed72bb
Clean up DocumentMessageHandler by breaking out several lengthy handlers into helper functions (#3568)
refactor(document): extract large match arms into helper methods

Part of #2740 - Code quality refactors.

This commit addresses the 'Match statements' section of the tracking
issue by extracting three large match arms from process_message() into
dedicated helper methods:

- handle_group_selected_layers: Handles layer grouping in both artboard
  and non-artboard workflows (~50 lines extracted)
- handle_move_selected_layers_to: Handles layer movement with proper
  transform preservation (~85 lines extracted)
- handle_nudge_selected_layers: Handles keyboard nudging with optional
  resize mode (~75 lines extracted)

The main match statement in DocumentMessageHandler is now ~210 lines
shorter and more readable. Logic and behavior remain unchanged.
2026-02-17 22:01:32 +00:00
Timon 3571c0d577
Fix Vello canvas on web not being transparent by using premultiplied alpha mode (#3770)
Fix canvas not being transparent by using Premultiplied alpha mode
2026-02-17 20:48:16 +00:00
Kulcode 2fe0cf7a4c
Fix holding Ctrl in the graph not allowing for selecting nodes unless some are in a layer (#3778)
* Fix

* Fix-2

* Formatting

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-17 20:20:57 +00:00
blue linden 3b1a51b393
Comment the GH Actions run link on `!build` comments for easier troubleshooting (#3392)
* Comment on `!build` requests with the Actions run ID for easier troubleshooting

* Update the triggering comment instead of making another one for the build link

* Make sure the workflow doesn't fail if the triggering comment was deleted.

* Post comment on build/upload failure

* Don't post a build link comment separately if the OG is deleted

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-17 01:10:47 +00:00
Ashish Mohapatra 723f7b14ea
Respect artboard clipping when computing canvas scrollbars (#3387) 2026-02-17 00:32:33 +00:00
Kulcode ed20f4ac9b
Fix outline rendering mode to draw shapes as black or white based on contrast with their artboard's color (#3724)
* contrast

* Update

* error corrected

* changes

* Fix

* fix-2

* cleanup-2

* Formatting

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-16 23:38:12 +00:00
Oliver Davies 20e12edd45
New node: Pack Strips (#3246)
* Added basic pack by bounds node

Apply suggestion from @Keavon

Co-authored-by: Keavon Chambers <keavon@keavon.com>

* Add support for choosing rows/columns strip direction

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-16 09:07:03 +00:00
Austin Henlotter 5b92901715
Fix Path tool not displaying its hints during G/R/S modes (#3222)
* Path tool no longer overrides other hints

* Related cleanup

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-16 04:23:47 +00:00
Austin Henlotter f186465220
Fix Spline tool aborting after placing only 1 point so it removes the incomplete layer (#3220)
* right click now correctly cancels spline extend

* Code review

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-16 01:01:11 +00:00
Mohd Mohsin b697cc8131
Add line numbers to file paths in the website editor structure docs (#3130)
* added the line number to existing path

* Update JS parser to use line numbers

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-15 23:59:27 +00:00
Vatsal Kumar 82f7dc7062
Improve the Shape tool's arrow drawing controls (#3650)
* fixed the arrow's parameters

Signed-off-by: krVatsal <kumarvatsal34@gmail.com>

* shifted the arrow's origin to its tail

Signed-off-by: krVatsal <kumarvatsal34@gmail.com>

* modified arrow shapetype fucntion to be like other shapes

* fixed rust formatting

* Remove misleading part of comment referencing the origin

---------

Signed-off-by: krVatsal <kumarvatsal34@gmail.com>
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-15 21:35:20 +00:00
MotherBoardMage 87739ff877
Fix solidify stroke node ignoring transforms applied before stroke node (#3683)
* fix: solidify_stroke node now applies transformations before calculating the stroke

* Check for non-invertible transform

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-15 20:32:22 +00:00
Jill Chhagnani 2f8ee1b1bf
Fix inability to navigate up and down with arrow keys in interactive-style menu lists (#3768)
fixed keyboard navigation in font picker
2026-02-15 19:19:23 +00:00
Kulcode 97c86125f6
Prevent tooltips from showing when mouse leaves the window over a widget with a tooltip (#3627)
* Fix tooltip visbility issue

* Reorganize

* Fix

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-15 10:53:24 -08:00
Keavon Chambers df0c9dcba2 Fix Breadcrumb Trail widget pixel misalignment at non-integer UI scaling 2026-02-15 00:18:10 -08:00
Keavon Chambers c574f58ecd Fix debug assert failure from selecting zero-sized objects 2026-02-15 00:01:09 -08:00
Kulcode 84f91eb795
Fix Text node/tool max width/height bounding box calculation (#3628)
* Fix: correctly apply max width/height in text bounding box

* bug fix

* Code cleanup

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-14 21:27:29 +00:00
Keavon Chambers 8738e59c21
Improve the QR Code node (#3765) 2026-02-14 20:53:29 +00:00
Sahil Gupta 6c10364c8c
Introduce QR Code node (#3565)
Co-authored-by: Timon <me@timon.zip>
2026-02-14 17:50:43 +00:00
Timon 8b67840f0c Desktop: Fix Eyedropper tool (#3764) 2026-02-14 16:44:52 +00:00
Vatsal Kumar f2dfd42754
Fix dragging range-style integer number inputs not accumulating slow mouse movements (#3682)
fixed to register non integer drag also
2026-02-14 07:02:43 +00:00
Adam Gerhant 1b1400b989
Fix insertion or creation of layers at top of a stack with multiple top output wires (#3680)
Fix layer insertion
2026-02-13 20:45:36 -08:00
Adam Gerhant 011bd724bc
Fix node shaking not working correctly when connected to graph imports (#3678)
Fix shaking node
2026-02-14 00:49:54 +00:00
Kulcode b5b896f89f
Add SVG import support for gradients with gradientUnits="userSpaceOnUse" (#3741)
* fix

* error corrected

* Cleanup

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-13 15:28:17 -08:00
Ayush Amawate 119a554260
Fix the Path tool adding a Path node but not applying the change until a second attempt due to wrong segment IDs (#3727)
* Fix SegmentIds lost when no Path node exists

* fix import order

* Use Arc<Vector> in vector_data for regression
2026-02-13 14:40:38 -08:00
Kulcode e606efd008
Improve the Gradient tool by visualizing color stops (#3698)
* Gradient

* improvement

* removed unnecessary code

* corrected error

* Partical changes

* Improveded

* remove from advertised actions

* Mousedown

* Partial code review

* changes as per recommendation

* corrected error

* corrected error -2

* changes as per recommendation

* error corrected

* changes as suggested

* Bug Fix

* Fix hints

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-13 00:25:15 +00:00
0SlowPoke0 ea68d62ec4
Add gizmos for interacting with the Spiral node (#2851)
* made spiral node

* number of turns in decimal and arc-angle implementation

* logarithmic spiral

* unified log and arc spiral into spiral node

* add spiral shape in shape tool

* fix min value and degree unit

* make it compile

* impl turns handle gizmo

* chore : Refactoring PR #2851 for current code base with some fixes

* Code review

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
Co-authored-by: Annonnymmousss <jatin02012006@gmail.com>
2026-02-12 22:33:40 +00:00
Ayush Amawate cd241095a2
Fix history steps not being given to Line tool endpoint movements (#3739)
start transaction when dragging line endpoints to enable abort
2026-02-12 20:33:19 +00:00
Ayush Amawate 9ae13634d0
Simplify the Layers panel tree structure Rust -> JS encoding (#3744)
* replace custom layer structure encoding with simple JSON tree

* add leftover files

* Renames

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-12 20:06:58 +00:00
Jatin Bharti bb6fea95e4
Fix regression preventing the selection of other pivot modes (#3751)
fix : custom pivot's origin selection not updating
2026-02-12 19:10:49 +00:00
Jatin Bharti f4a5c77df8
Fix regression preventing the renaming of graph imports/exports (#3752)
fix : Node Renaming error
2026-02-12 10:42:38 -08:00
Keavon Chambers 1ec75ab213 Add application privacy policy to the website 2026-02-11 19:54:41 -08:00
Timon d2eaa03498
Desktop: Disable more CEF optional features (#3747) 2026-02-11 23:36:34 +00:00
Jatin Bharti a1a9abd6a2
Fix the Gradient tool's linear/radial type toggle resetting the gradient color stops (#3499)
* fix : sync the linear/radial option in menu bar and property panal

* fix : fmt

* Promote vector meshes from experimental by removing it from preferences

* fix : change reverting bug

* chore : refactor

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2026-02-11 13:49:23 -08:00
Timon 4cdfbb22e8 Desktop: Fix new document offset on first startup (#3738)
Desktop: Fix new document offset
2026-02-11 13:08:17 -08:00
Keavon Chambers 4cda1ddd29 Update student projects list on the website 2026-02-11 01:35:08 -08:00
Timon 9633de5929
Desktop: Push builds to Nix binary cache in CI (#3740)
Desktop: Add Nix Cache
2026-02-09 19:17:14 +00:00
Timon 0f10c242e2
Desktop: Enable manual trigger for Mac and Windows builds (#3736) 2026-02-08 23:39:23 +00:00
Timon 2f5ccad5ea
Desktop: Reduce Nix package closure size (#3737) 2026-02-08 21:31:38 +00:00
Timon acab171bc5
Desktop: Build and Sign Mac and Windows Bundles in CI (#3728)
* Desktop: Build and Sign Mac and Windows Bundles in CI

* Desktop: Remove unnecessary CEF files from Windows Bundle

* Desktop: Use a temp file for license generation on Windows to avoid PowerShell modifying stdout
2026-02-06 13:37:07 +00:00