Keavon Chambers
96b5d7b520
Many subtle improvements to the UI design system ( #1537 )
2023-12-28 04:35:20 -08:00
Keavon Chambers
34f952bad1
Convert u64 IDs to newtypes ( #1532 )
2023-12-22 03:24:13 -08:00
Keavon Chambers
7bfe0ce55b
Retire layer paths used throughout the code ( #1531 )
...
* Part 1
* Part 2
* Part 3
* Part 4
* Part 5
* Part 6
* Part 7
* Part 8
2023-12-21 19:32:46 -08:00
Keavon Chambers
5c7e04a725
Additional clean up and bug fixes after migrating document-legacy
2023-12-20 18:43:32 -08:00
Keavon Chambers
92203f3576
Remove the whole document-legacy crate ( #1524 )
...
Remove the whole document-legacy crate
Closes #1520
2023-12-20 05:45:54 -08:00
Keavon Chambers
9a7d7de8fa
Remove most of document-legacy ( #1519 )
...
* Remove boolean ops and unused doc-legacy Operations
* Remove Shape legacy layers
* Remove legacy layer Properties panel code
* Remove additional unused doc-legacy Operations
* Removed unused rendering-related legacy-layer code
* Upgrade dep so CI builds
* Remove various additional unused functions and messages
* Remove the LayerData trait
* Remove RenderData struct and usages
* Banish the Operations system
* Further removals
2023-12-19 04:36:19 -08:00
0HyperCube
c42d030f18
New overlay system ( #1516 )
...
* Port gradient tool overlays
* Fix tests
* Text tool
* Artboard tool and some of select tool
* Port select tool drawing box
* Pen and path tool
* Remove overlays document
* Show the overlay refactor as done on the website roadmap
* Select tool bounds in layer space (first layer)
* Code review and fixes
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-12-18 11:17:43 +00:00
0HyperCube
29222700f4
Fix the blend mode and opacity widgets of the Layers panel ( #1506 )
...
* Fix blend mode and opacity
* Cleanup and bug fixes
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-12-12 09:27:23 +00:00
0HyperCube
6bce72dccd
Fix document becoming unsaved (*) when clicking with Select tool ( #1509 )
...
Fix star on select tool
2023-12-11 22:14:20 +00:00
0HyperCube
10863acd83
Fix crash when reordering layers ( #1492 )
2023-12-09 13:08:46 +00:00
Keavon Chambers
c33ba1b315
Fix Properties panel to show selected layers/nodes
2023-12-09 04:08:07 -08:00
Keavon Chambers
8f9371dad0
Improve navigation footer bar hints
2023-12-06 01:51:30 -08:00
0HyperCube
f8b9c5db6d
Improve text transforms ( #1487 )
2023-12-04 14:57:44 -08:00
0HyperCube
b2ca643e6e
Fix transforms, Brush tool, and G/R/S ( #1473 )
...
* Transform fixes
* Fix the desert artwork
* Change artboard icon
* Better handling when transforming brush strokes
* Code review pass
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-11-26 20:54:06 -08:00
0HyperCube
5ee79031ab
Fix hiding and collapsing layers ( #1481 )
...
* Hide and collapse layers
* Reorder imports
* Fix Ctrl+H shortcut advertized action and hotkey tooltip; improve graph top right of options bar
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-11-27 02:27:11 +00:00
Keavon Chambers
ab3410cffe
Consolidate MenuListButton into TextButton ( #1470 )
2023-11-25 01:56:05 -08:00
0hypercube
da4d95fa7b
Fix spline tool deleting layer
2023-11-19 23:09:42 -08:00
0HyperCube
8a1cf3ad5d
Migrate demo artwork and fix all failing CI tests ( #1459 )
...
* Initial work on fixing tests
* Fix formatting
* Remove dead code to satisfy rustc warnings
* Insert into an artboard
* Load updated artwork in editor
* Remove popup when importing image
* Fix up demo art
* Change transform app[lication method
* Reduce number of enums called BlendMode
* Finalize the demo artwork upgrade
* Code review pass
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-11-19 23:06:21 -08:00
Keavon Chambers
719c96ecd8
Rename and reorganize several widgets ( #1462 )
...
* Rename SwatchPairInput -> WorkingColorsButton
* Remove unnecessary Svelte each-loop keys
* Rename (and migrate) MenuBarInput -> MenuListButton
* Rename PivotAssist -> PivotInput
* Rename PersistentScrollbar -> ScrollbarInput and CanvasRuler -> RulerInput
* Rename DIalogModal -> Dialog
* Rename WidgetRow -> WidgetSpan
2023-11-18 04:34:30 -08:00
Keavon Chambers
e3f5e7001f
Redesign ColorInput widget and rename it to ColorButton
2023-11-16 18:38:39 -08:00
0HyperCube
58660f5548
Allow groups to work with the node graph ( #1452 )
...
* Initial groups
* Improve graph arangement
* Fix selecting nested layers
* Code review pass
* Change log
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-11-14 17:17:14 +00:00
Keavon Chambers
605c0de392
Fix Rust code lints ( #1448 )
...
* Fix Rust lints to satisfy Clippy
* Remove some unused commented out code
2023-11-05 13:52:00 -08:00
Keavon Chambers
e54a2e2fc6
Remove the Frame tool
2023-11-04 03:04:26 -07:00
0HyperCube
9b034a5194
Fix deleting layers ( #1441 )
...
* Fix deleting layers
* Code review comments
2023-10-25 15:20:55 -07:00
0HyperCube
54745e210a
Fix the Path tool's smooth/sharp buttons ( #1439 )
...
* Fix select tool smooth button
* Nit
* Fix behavior when zero points are selected but the shape is active
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-10-25 09:26:24 +01:00
0HyperCube
b8906f344e
Migrate the Text tool to the document graph ( #1435 )
...
* Update text tool to document graph
* Fix selection issue
* Log graph reruns and text node evals
* Hash to set node
* Fix let node crash
* Fix loading document with fonts
* Allow pressing enter to edit
* Cleanup
* Code review nits
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-10-24 12:55:13 -07:00
Yuri Astrakhan
3d4e3a74e5
A few minor lints and docs ( #1436 )
...
* A few minor lints and docs
* Added required packages to compile on Debian-style linux
* Inlined some format args, and removed some `&` in args (they cause about 6% slowdown that compiler cannot inline)
* a few spelling mistakes
* fix fmt
2023-10-18 23:33:10 -07:00
0HyperCube
5827e989dc
Migrate the Select tool to the document graph ( #1433 )
...
* function for accessing document metadata
* Better select tool
* Fix render
* Fix transforms
* Fix loading saved documents
* Populate graph UI when loading autosave
* Multiple transform nodes
* Fix deep select
* Graph tooltips
* Fix flip axis icon
* Show disabled widgets
* Stop select tool from selecting artboards
* Disable (not hide) the pivot widget; remove Deep/Shallow select for now
* Code review changes
* Fix pivot position with select tool
* Fix incorrectly selected layers when shift clicking
---------
Co-authored-by: Dennis Kobert <dennis@kobert.dev>
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-10-17 11:09:32 -07:00
Dennis Kobert
833f41bccb
Insert pasted images as layers in document graph ( #1418 )
...
Changes:
Graph is evaluated on every viewport change
move all navigation logic into the viewport
reduce the number of js roundtrips
add canvas rendering
enable image pasting
various cleanups
Fix cache nodes being reset every evaluation
2023-10-17 11:02:07 -07:00
0hypercube
b52f831b21
Fix artboard tool and remove old artboard code
2023-10-17 11:02:06 -07:00
0hypercube
9a39c4a0cc
Fix gradient tool
2023-10-17 11:02:06 -07:00
0hypercube
6173662a40
Fix freehand and spline tool
2023-10-17 11:02:06 -07:00
hypercube
0d6bec837b
Fix path tool
2023-10-17 11:02:06 -07:00
0hypercube
4cd72edb64
Initial work migrating vector layers to document graph
...
* Fix pen tool (except overlays)
* Thumbnail of only the layer and not the composite
* Fix occasional transform breakages
* Constrain size of thumbnail
* Insert new layers at the top
* Broken layer tree
* Fix crash when drawing
* Reduce calls to send graph
* Reduce calls to updating properties
* Store cached transforms upon the document
* Fix missing node UI updates
* Fix fill tool and clean up imports and indentation
* Error on overide existing layer
* Fix pen tool (partially)
* Fix some lints
2023-10-17 11:02:06 -07:00
mobile-bungalow
9667e5173b
Allow toggling smooth/sharp angle from the path tool options bar ( #1415 )
...
* menu in option
* smoothing controls work
* fixed type error
* fix flipping behavior
* silence warning
* consolidate selection state
* update positions options
* blinking logic fixed, smoothing logic implemented
* fixed arbitrary looping when flipping from sharp to smooth
* remove warning
* Tidying up
* refactor manipulator smoothing code, remove bitflags, rename
* Make the point smooth/sharp support mixed better
* Code review tweaks
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-09-11 17:36:08 -07:00
Keavon Chambers
88bdf9580f
Make RadioInput accept optional selected_index
2023-09-11 15:40:05 -07:00
mobile-bungalow
b29acbd784
Rework navigation tool hints and navigation shortcuts ( #1419 )
...
* Added Pan,Tilt,Zoom to View menu + Tilt shortcut changes
* formating
* fixed menus, added action for when dispatch happens from menu
* set key mappings to spec
* fix labels for navigation tool
* fix some spacing
* add action that locks spacebar for navigation when using it as a modifier so the node overlay does not toggle
* escape from the node-graph-overlay, set toggle to ctrl+space, fix demo art
* move all transform state into an enum
* rename confusing flag
* fix demo art and tests
---------
Co-authored-by: Ezbaze <rybitwamateusz3@gmail.com>
2023-09-10 23:42:27 +01:00
Prikshit Gautam
ad9ccaa800
Add 'select all points' method to ShapeState struct ( #1386 )
...
* Added select all points method to ShapeState struct
* Map select_all_points functions to shortcut
* Make SelectAllPoints action relevant in the current context only
* Refactor select_all_points to only select anchors
* Fix(editor): enable selected point update after selection change via clicking
2023-09-04 19:35:43 -07:00
Keavon Chambers
56f20f2e6d
Remove history step creation from Select tool box selection
2023-09-02 15:26:04 -07:00
Keavon Chambers
a112ab27cf
Dialog redesign and content revamp ( #1409 )
...
* Revamp the content and design of dialogs
* Add the Licenses dialog
2023-09-01 01:58:20 -07:00
mobile-bungalow
48fdaddc37
Add Path tool options for editing X/Y point coordinates ( #1404 )
...
* implement path point selector in toolbar
* Transform point to art board space
* fix handle adjustment space
* remove unused branches
* tidy comments
* make function names more descriptive, add guards, fix comments
* add auxillary message for layout update
* change trace to warn, remove unneccessary messages, fix rustfmt
* rustfmt
* support handles
* style and dimensions corrections
* Code review
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-08-29 21:41:01 -07:00
Prikshit Gautam
fb1922b49d
Clean up and suppress Clippy warnings ( #1402 )
...
* fix: clear and suppress clippy warnings
* Simplification
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-08-27 16:56:53 -07:00
Ezbaze
226b96260c
New nodes: shape/curve primitives ( #1389 )
...
* Add new Primitive Shape/Curve Nodes
* Elipse Node and Debug
* N-input Spline node
* Debuging
* Debug
* fmt
* remov debug
* Changes from code review
* Debug: Empty Spline Input
* Changes from code review
* Fix spelling of ellipse
* Rename polygon to regular polygon
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-08-27 14:22:09 -07:00
Omar Magdy
fd338c945f
Fix crash from overflowing values given to NumberInput widgets ( #1377 )
...
* Added hints for brush tool size
* Added hints for brush tool size
* Solved the user being able to crash the editor by overflowing NumberInputs
2023-08-11 12:26:37 -07:00
Dhruv
1c11ebcc4e
Correct snapping offsets after canvas transformation when using snap-reliant tools ( #1370 )
...
* fix: pen, spline tool incorrect snap offsets
- re-render snapping offsets if canvas transformed during line draw
* [wip]feat: add CanvasTransformed global message
* [wip]fix: synchronize line tool snap offsets
* fix: update offsets for shape tools on canvas transform
* chore: remove unneeded function parameter
* [wip]fix: use line tool at canvas level
* refactor: revert line tool changes
2023-08-11 12:26:19 -07:00
Omar Magdy
8b9f279f12
Add hints for Brush tool resizing ( #1363 )
...
Added hints for brush tool size
2023-08-06 15:32:06 -07:00
Keavon Chambers
3450d638a6
Layer-based nodes redesign, just the basics so far ( #1362 )
...
* Redesign the nodes
* Basic vertical stacking syntax sugar
* Fix node connections
* Primary output and line thickness
---------
Co-authored-by: 0hypercube <0hypercube@gmail.com>
2023-08-04 14:56:00 -07:00
Dhruv
50b67bf6f6
Fix Text Tool Overwriting Existing Text on Editing Text Layer ( #1356 )
...
fix: text edit overwriting existing text
2023-08-03 17:08:49 +01:00
Keavon Chambers
2b05e1c270
Rename Shape tool to Polygon tool
2023-08-01 01:28:14 -07:00
Keavon Chambers
b9e49623a3
Rename PropertyHolder to LayoutHolder
2023-08-01 00:46:30 -07:00