Adam Gerhant and Keavon Chambers
a6052c5819
Replace node definition string-based lookups with DefinitionIdentifier instances ( #3451 )
...
* create definition identifier and integrate it
* Bug fixes and code review
* formatting
* Fix migrations
* Fix remove handles migration
* formatting
* Fix test
* Fix tests 2
* fix deserialization
* Code review
* Small fixes
* Consolidate 'Morph' node migrations
* Add old SamplePointsNode name to migrations list
* Fix tests
* Unrelated small fix
* Fix migration crashes
* Fix tests
* Final code review
* fmt
* Add metadata
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2026-01-12 23:09:43 -08:00
Keavon Chambers
63217feac6
Organize the categories of widget component props
2025-12-23 21:23:13 -08:00
Keavon Chambers
6dea184b03
Update the color of scrollbars to match the latest design
2025-12-23 15:13:12 -08:00
Keavon Chambers
2f880fa035
Fix missing artboard layer icon
2025-12-23 14:43:13 -08:00
Keavon Chambers
f1e8ebefc5
Improve tooltip docs with Markdown styling and refined math node explanations ( #3488 )
2025-12-20 01:05:15 -08:00
Keavon Chambers
e99f30e633
Stop hover transfer working between rows of Properties panel dropdown menus
2025-12-19 23:45:07 -08:00
Keavon Chambers
2d6d054359
Make font selection show a live preview on hover; move its code to the backend ( #3487 )
...
* Remove FontInput.svelte
* Move font picking to the backend
* Fix Text tool font choice style turning to "-" on font that doesn't support previous style
2025-12-19 22:17:28 -08:00
Keavon Chambers
74d9c911bd
Fix ShortcutLabel drawing of consecutive key labels
2025-12-04 22:04:37 -08:00
Keavon Chambers
783ea0b437
Unwrap the Layout enum to replace it with the WidgetLayout struct now called Layout ( #3448 )
2025-12-04 15:24:40 -08:00
Keavon Chambers
3c4ad8b720
Refactor the WidgetLayout struct to remove SubLayout and avoid sending LayoutTarget to frontend
2025-12-04 02:44:54 -08:00
Keavon Chambers
810ce40e9b
Restyle and refactor shortcut labels to send hints bar and welcome screen layouts from Rust ( #3447 )
...
* Restyle UserInputLabel and refactor its usages to have all input its data sent from Rust
* Replace the welcome screen quick buttons with ones sent by backend
* Add the ShortcutLabel widget to the backend
* Replace hints bar with a backend-controlled layout; show mouse icons in place of mouse labels
2025-12-04 01:04:14 -08:00
Keavon Chambers and Timon Schelling
600fb5c28f
Refactor the old menu bar plumbing to use standard TextButtons ( #3444 )
...
* Refactor the old menu bar plumbing to use standard TextButtons
* WIP: Fix Mac native menu bar
* WIP: fix desktop menu bar mac
* Refactor menu bar definitions to use the builder pattern
* WIP: fixup desktop
* cleanup
* fix linux
* Remove dead code that was failing to lint
---------
Co-authored-by: Timon Schelling <me@timon.zip >
2025-12-03 12:41:54 +00:00
Keavon Chambers
e8ebcc2c21
Replace text-only tooltips with custom richly styled tooltips ( #3436 )
...
* Replace the title attribute with custom FloatingMenu tooltips
* Separate tooltip labels and descriptions into two styled blocks
* Move keyboard shortcut tooltips to a separate section at the bottom
* Update shortcut key styling in tooltips and hints bar
* Fix .to_string()
2025-11-30 13:32:58 -08:00
Keavon Chambers
ab5c87f017
Hide cursor while dragging number inputs in Safari to approximate PointerLock, and disable it on desktop ( #3425 )
...
* Make pointerlock conditional and opt out on Safari and desktop
* Add Safari workaround
2025-11-27 00:12:58 -08:00
Timon
3f532e478c
Separate branded assets from monorepo ( #3406 )
...
* remove branded files
* use branding repo
* include favicons
* nixpkg fixup
* win fix ico path
* fix fmt
* skip licensenses for dev builds
* review fixup
* test
* test
* ci test
* ci test
* ci test
* fix ci
2025-11-25 02:42:27 +00:00
Keavon Chambers
12453d2e61
Make the welcome screen not include Alt in Ctrl+Alt+N on desktop
2025-11-17 15:26:23 -08:00
Keavon Chambers
f4a0f272dd
Add note about the September 2025 release to the editor welcome screen
2025-09-20 05:20:20 -07:00
Keavon Chambers
22aa8c1264
Update UI widget designs to improve color consistency and add a narrow height mode
2025-09-08 21:48:22 -07:00
Keavon Chambers
b5ebe78f5e
Update all frontend npm dependencies except Svelte and Vite ( #3120 )
...
* Upgrade node dependencies except Svelte 5 and its peer deps
* Fix lint errors
* Fix previous Rust deps upgrade breakage
* Fix demo artwork
* Allow profiling CI workflow to fail
2025-09-01 17:22:30 -07:00
Keavon Chambers
0e467907e2
Improve font import; replace Inconsolata with Source Code Pro; show third-party licenses in editor dialog ( #3079 )
...
* Improve font import; replace Inconsolata with Source Code Pro; show third-party licenses in editor dialog
* Code review
2025-08-21 11:57:04 -07:00
Ciftci and seabeeberry
36a1453d03
Add workaround for a Safari bug where our number input fields can't be released from click-and-drag ( #3053 )
...
Added fallback for Safari to trigger a pointerLockChange in case it doesnt fire automatically
Co-authored-by: seabeeberry <seri@Mac.fritz.box >
2025-08-18 22:30:18 -07:00
Keavon Chambers
2bb4509647
Replace the Spreadsheet panel with an improved Data panel ( #3037 )
...
* Improve the table data panel
* Add the "Window" menu bar section and polish everything
2025-08-10 07:46:42 -07:00
Keavon Chambers
0f638314dc
Rename the Group type to Graphic everywhere ( #3009 )
2025-08-05 20:55:15 -07:00
Timon and Keavon Chambers
8fad295e36
Make checkboxes not use interior mutability ( #2976 )
...
* Make checkboxes not use interior mutability
* Use copy instead of cloning
* Fix
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2025-08-03 15:16:21 -07:00
mTvare and Keavon Chambers
8a68683a93
Add pivot type selection with Custom Pivot, Origin (Average Point), and Origin (Active Object) to the Select tool ( #2730 )
...
* add origin
* cleanup pivot
* a lot of stuff
* reset pivot
* fix transform with pivot issues
* fixes
* some more cleanup
* fixes
* finally works
* origin fixes
* fix spaces
* fix using dragged_layers
* simplify pivot logic
* fix bugs
* fix the final bug
* fix in select_tool
* fix updates
* some more refactors to fix misunderstanding and refactor
* add checkboxes
* fix labels
* fix stuff which broke at merge
* update
* cargo fmt
* fix serde crash
* fix pivot not updating on move
* fix pivot not becoming last active refernce
* fix redraw issues
* add: active pivot
* cargo fmt
* fix pivot showing up in default mode
* add: pivot pin
* fix: use pin icons
* cargo: cargo lock update?
* fix: use checkbox instead of Overlays
* refactor: add dot to path_tool
* add: active origins
* UI tweaks
* add: add all of the stuff for path tool
* remove: unused layer
* fix: pivot pinning and origin angle
* fix: pin only if moved in first place
* cargo: fmt
* fix: pivot use disabled method
* fix: remove redudant NoOp
* fix: 3 stuff
* fix: select from elsewhere
* fix: compass rose wobbling around
* add: move pivot on grab
* add: move pivot on nudge
* add: move pivot on Grab
* Code review and tooltips
* fixes
* fixes
* fixes
* fix: skipping artboard on bounds calculation
* fix: by default have origin
* Fix prior fix
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2025-07-08 09:24:54 +00:00
Salman Abuhaimed and Keavon Chambers
83773baa00
Replace Rustybuzz with Parley for text layout, and add text tilt parameter ( #2739 )
...
* replace rustybuzz with parley for text layout handling
change text input direction based on text direction
* Code review
* change default character spacing to 0
* add shear to text node
this also adds migration code for documents that don't have shear
* shear migration for text node
- add shear property
- set character spacing to 0
* use old max_width and max_height in text migration if available
* Final code review pass
* Add units to the parameters
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2025-07-01 02:23:17 -07:00
James Lindsay and Keavon Chambers
532e913017
Fix DropdownInput widget not reactively updating when its content changes ( #2770 )
...
* Improve reactivity of DropdownInput.svelte
* Fix formatting lint
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2025-06-28 02:59:03 +00:00
Keavon Chambers
c1b15fcfdf
Fix Ctrl+Space not closing the graph after opening the node creation menu
2025-06-22 03:29:41 -07:00
Keavon Chambers
63cce26755
Tweak the design of the RadioInput widget
2025-05-24 16:07:01 -07:00
Keavon Chambers
c4678336e5
Add support for clicking checkboxes via their labels ( #2667 )
2025-05-24 04:46:15 -07:00
Keavon Chambers
899ed5ad85
Tidy up the Layers panel with a new bottom bar
2025-05-21 04:14:01 -07:00
Keavon Chambers
471ef87801
Add reference point input to the Mirror node
2025-04-24 05:33:20 -07:00
Keavon Chambers
41fe46591a
Update the parameter expose button in the Properties panel and fix undo history when it's clicked
2025-04-17 06:29:38 -07:00
Keavon Chambers
eca5d0d105
Add node description tooltips in the Properties panel and on secondary inputs in the graph ( #2590 )
...
Add tooltips to secondary inputs in graph/Properties panel, and to nodes in Properties panel
2025-04-17 00:59:46 -07:00
James Lindsay and Keavon Chambers
43275b7a1e
Add the Spreadsheet panel to inspect node output data ( #2442 )
...
* Inspect node ouput stub
* Fix compile error in tests
* Create a table
* Clickable tables
* Add vector data support
* Checkbox to enable the panel
* Remove Instances table ID column; style the spreadsheet
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2025-03-18 23:06:05 -07:00
Keavon Chambers
bc6e76208d
Fix bug introduced in #2276 causing number inputs to abort on any keyboard input, not just Esc
2025-03-01 01:28:27 -08:00
Keavon Chambers
2c88bee0ee
Update some UI components to polish the frontend
2025-02-21 12:58:05 -08:00
Keavon Chambers
1700c3a650
Update website with improved student project details
2025-02-11 17:18:57 -08:00
Keavon Chambers
ec8c8d6485
Polish and add aborting to several input widgets: no Esc closing parent menus; color picker axis align; repeat on arrow buttons ( #2276 )
...
* Remove color input outline; reduce antialiasing compositing artifacts in color widgets
* Rename ColorButton to ColorInput
* Add features and aborting to several other widgets
- Prevent Esc from closing parent floating menus when aborting
- Fix missing icon regression
- Gutter resizing abort
- Color picker aborts, Shift axis alignment, improve click/drag behavior for gradient spectrum
- Scrollbar abort, repeat when held, fix directional arrows when viewport is zoomed
- Number input abort, repeat when held
* Move ColorInput into the inputs folder
* Fix tiny logo
2025-02-10 05:46:41 -08:00
Keavon Chambers
0037f5158c
Add new icons to all menu bar entries
2025-02-07 19:08:06 -08:00
Keavon Chambers
0ec91bfe01
Add pin and cut icons; improve menu bar shortcut labels to choose shortest
2025-02-05 18:30:10 -08:00
prathmesh703 and Keavon Chambers
0865605f74
Fix some number input widgets becoming selected after dragging left/right in Firefox ( #2250 )
...
* fixes drag
* Cleanup
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2025-02-05 07:44:58 +00:00
Keavon Chambers
9ad6c31483
Remove blob URL dead code and clean up more frontend code ( #2199 )
2025-01-14 13:08:47 -08:00
Keavon Chambers
feba87449b
Add more actions to the Layer menu bar entries
2024-12-26 16:31:13 -08:00
Keavon Chambers
1264ea8246
Tidy up the UI with clearer Layers panel selection marks and removal of most "coming soon" UI elements
2024-12-14 20:49:21 -08:00
Adam Gerhant and Keavon Chambers
4250f291ab
Add merging nodes into a subgraph with Ctrl+M and basic subgraph signature customization ( #2097 )
...
* Merge nodes
* Fix bugs/crashes
* WIP: Debugging
* Fix bugs, add button
* Add imports/exports
* Improve button
* Fix breadcrumbs
* Fix lints and change shortcut key
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2024-11-12 14:27:42 -08:00
Keavon Chambers
f1b0d8fa87
Improve the node graph with revamped top bar and disabling tools when graph is open ( #2093 )
...
* Add "Fade Artwork" slider and disable tools when graph is open
* Add navigation and layer/node management buttons to graph top bar
* Reduce code duplication
2024-11-04 20:41:53 +00:00
James Lindsay
9eeefaad90
Fix NumberInput widget not being reactive to changes to the unit ( #2080 )
...
Svelte watch unit
2024-10-26 20:40:35 +00:00
James Lindsay and Keavon Chambers
5aa6716910
Add a node insertion button and layer renaming from the Properties panel ( #2072 )
...
* Add node button
* Improve css a bit
* Add layer renaming to the Properties panel and move New Layer to that, plus add unpinning to properties sections
* Add tooltip
* Re-add layer itself in listing
* Final code review
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2024-10-25 23:58:34 -07:00
Keavon Chambers
1ee5ffbbe8
Clean up web code errors and make CI enforce them
2024-09-24 01:33:02 -07:00