Mohamed Osama
3c839ffd2b
Clean up old usages of NodeId(generate_uuid()) by replacing it with NodeId::new() ( #2009 )
...
Replace all `NodeId(generate_uuid())` with `NodeId::new()`
2024-10-25 19:43:46 -07:00
James Lindsay
dae6b2f239
New node: Bevel ( #2067 )
...
* Bevel node
* Fix clippy lints
* Prevent negative values
* Rename flipped() -> reversed()
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-25 19:25:41 -07:00
RyanRothweiler
63d44f22e3
Fix Text tool clearing text when hitting Escape by changing it to commit the edit instead ( #2052 )
...
* Text tool escape sends commit message
* Improve hint text
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-25 18:12:54 -07:00
James Lindsay
79408fc0cc
Fix alignment snapping not preserving aspect ratio when Shift is held ( #2062 )
...
Fix align with a diagonal constraint
2024-10-25 17:34:23 -07:00
James Lindsay
7fc0a593c8
Fix gradient render transforms with Vello ( #2059 )
...
Fix vello gradient transform
2024-10-26 00:12:24 +00:00
adamgerhant
fd20d51e85
Fix various crashes and bugs ( #2075 )
...
* Fix offset brush tool
* Fixes
2024-10-25 16:54:37 -07:00
Dennis Kobert
3e0178a032
Add switch node and fix log to console node ( #2064 )
...
* Add switch node and fix log to console node
* Formatting
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-25 16:30:02 -07:00
adamgerhant
6b1356fe13
Allow multiple top output wires to come from layers ( #2049 )
...
* Allow multiple outputs from layer
* Stable Ids for Flatten Vector Elements
* Clippy
2024-10-25 22:32:31 +00:00
Elbert Ronnie
9d13a8f73b
Raw-rs: Remove from workspace ( #2066 )
...
* Remove raw-rs from workspace
* Add feature blocking to reqwest
* Use release build to run the tests
* Split Raw-rs CI into a seperate workflow
* Fix cargo-deny check for Raw-rs
* Only run the CI if Raw-rs changes
* Enable clippy check for Raw-rs
* Add newline in clippy check
* Fixups
* Use ubuntu-latest
* Remove mold
* Install sccache
* Attempt 2
* Attempt 3
* Add emoji for consistency
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-25 14:44:45 -07:00
Elbert Ronnie
36fe9bf31b
Raw-rs: Fix naming convention of matrices ( #2071 )
...
Fix naming convention of matrices
2024-10-25 19:09:07 +00:00
Elbert Ronnie
442937c13f
Raw-rs: Refactor to run multiple steps in a single loop ( #1972 )
...
* Prevent extra allocation in convert to RGB step
* Run preprocessing steps in a single loop
* Create new API to call steps in pipeline
* Include transform and gamma correction step
* cargo fmt
* Split scale colors into two steps
* Code relocations
* cargo fmt
* Implement transform traits for all tuples
* Replace Captures trick with the new `use` keyword
2024-10-25 11:52:35 -07:00
Keavon Chambers
a395fbf063
Fix/suppress new Clippy warnings introduced in Rust 1.82
2024-10-25 11:14:51 -07:00
James Lindsay
c3a3c4c907
Allow the Fill and Stroke nodes to work on groups ( #2046 )
...
* Add the apply style trait for generalised application of styles
* Fix Clippy warn
* Use existing trait
* Remove unnecessary lifetimes
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-16 16:06:53 -07:00
James Lindsay
9f7b3936f4
Fix brush tool broken by #2011 ( #2045 )
...
Brush tool fix
2024-10-16 20:04:33 +00:00
Keavon Chambers
f892687576
Update the screenshots on the website home page carousel
2024-10-15 22:32:07 -07:00
James Lindsay
47a5cc5535
Blog post: Graphite progress report (Q3 2024) ( #2013 )
...
* Q3 blog
* WIP
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-15 15:45:08 -07:00
adamgerhant
e09f5ecaec
Make Copy to Points and (Circular) Repeat and nodes output group data, and add flattening nodes ( #2011 )
...
* Output group from repeat, add flatten vector elements
* Fix tests
* Fix demo artwork
* Output group from copy to points, add repeat for graphic groups, fix editor freeze on render fail
* Restore painted dreams
* WIP: Fix demo artwork
* Fix demo artwork, add ungroup node
* Incorrect scaling
* fix test
* Fix demo art
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-14 12:39:28 -07:00
James Lindsay
b028bbb8cc
Fix crash from empty document with no artboards introduced in #2028 ( #2036 )
...
* Fix me crashing the editor due to not paying attention
* Swap two lines for consistency
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-14 18:24:51 +00:00
James Lindsay
a761e7803e
Improve text overlay styling and fix artboard label positioning bug ( #2032 )
...
* Improve text overlays
* I can't test code
2024-10-13 21:35:50 +00:00
fiveeyy
5c98378c7a
Fix Ctrl+H layer hiding and Ctrl+L layer locking only working with the graph open ( #2029 )
...
* Add DocumentMessage::ToggleSelectedVisibility
* Add DocumentMessage::ToggleSelectedLocked
* Update editor/src/messages/input_mapper/input_mappings.rs
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-13 14:19:46 -07:00
James Lindsay
d6f46f73da
Factor in artboard clipping to the click target x-ray function ( #2028 )
...
* Add clipping to the click xray function
* Clip area rays as well
* Code review nits
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-12 23:38:17 +00:00
James Lindsay
3b0e9587eb
Update Wasm dependencies to fix WebGPU spec change crash in Firefox with Vello ( #2027 )
...
* Update wasm deps
* Bump wasm-bindgen and fix the depricated methods
2024-10-12 14:28:39 -07:00
Keavon Chambers
f7d83d2632
New node: Offset Path ( #2030 )
...
* New node: Offset Path
* Fix CI
2024-10-11 14:50:54 -07:00
Keavon Chambers
7a56af01ef
Fix the Scatter Points node
2024-10-10 13:45:51 -07:00
adamgerhant
dc46959274
Fix double clicking anchor to convert between smooth and sharp ( #2023 )
...
* Buffer after undo
* Quick thumbnail fix while I'm thinking about it
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-07 13:13:52 -07:00
Dennis Kobert
bb8560e5ad
Fix faulty contravariance checking ( #2025 )
...
* Fix faulty contravariance checking
* Fix documented soundness issue in type resolution
2024-10-07 12:35:27 -07:00
Keavon Chambers
fa6b5f298a
New demo artwork: "Changing Seasons"
2024-10-04 16:31:22 -07:00
Keavon Chambers
a2465f40b3
Simplify the Bezier-rs interactive web demo code ( #2020 )
...
* Change demo pane classes into simpler group functions
* Eliminate classes
* Use template strings for HTML
* Reduce files and flatten directories
* Restructuring to reduce redundant code
* Eliminate the module pattern and consolidate both demo types
* Further consolidate into main.ts
2024-10-03 17:20:50 -07:00
Keavon Chambers
e6d8c4743d
Add support for pinning nodes in the Properties panel
2024-10-03 16:26:40 -07:00
Dennis Kobert
b26dfbcd7c
Always close subpaths before applying boolean ops ( #2014 )
...
* Always close subpaths before applying boolean ops
* Roundtrip boolean path through svg string
* Reverse closing path segment
* Sort result of boolean ops
* Make face visiting order deterministic
* Remove debugging code
* Remove unused post processing
* Clippy lint
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-10-03 11:20:04 -07:00
Dennis Kobert
d2f791cfb3
Make Upload Texture node resolution-aware ( #2018 )
...
* Make UploadTextureNode resolution aware
* Add TextureFrame implementations for MonitorNode
* Add TextureFrame implementation to TransformNode
2024-10-03 10:32:34 -07:00
Keavon Chambers
2d86fb24ab
Add line height and character spacing to the Text node ( #2016 )
2024-10-01 12:28:27 -07:00
Keavon Chambers
904cf09c79
Add drag-and-drop and copy-paste file importing/opening throughout the UI ( #2012 )
...
* Add file importing by dragging and dropping throughout the UI
* Disable comment-profiling-changes.yaml
* Fix CI
2024-09-28 00:19:43 -07:00
adamgerhant
20470b566b
Fix many regressions introduced mostly in #1946 ( #1986 )
...
* Fix text tool
* Implement buffering to fix freehand tool
* Fix tools
* Fix clippy lints
* Small fixes
* Move vector modify back to Monitor nodes
* Code review
* Fix abort
* Fix svg import
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-09-26 15:37:03 -07:00
Keavon Chambers
c738b4a1f9
Replace terminology "primary" with "call argument" and "parameter" with "secondary input"
2024-09-25 20:05:00 -07:00
Dennis Kobert
f8c7ada572
Add manually-runnable benchmarks for runtime profiling ( #2005 )
...
* Split benches into two files
* Implement executor update bench
* Restructure benchmarks
* Unify usages of wrap network in scope
* Remove unused imports
* Fix oom bug
* Remove bounding box impl
2024-09-25 10:52:41 +02:00
nznznz42
c5454af48b
New node: Dehaze ( #1882 )
...
* feat: Implemented Dehaze Node
* Update Cargo.toml
* Remove unecessary image conversions
* Code review
* Further fixes
---------
Co-authored-by: Dennis Kobert <dennis@kobert.dev>
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-09-24 20:44:48 -07:00
Keavon Chambers
0b0169a415
Remove serde from Bezier-rs web demos to reduce Wasm size
2024-09-24 01:33:15 -07:00
Keavon Chambers
aa03dc8278
Upgrade web dependencies
2024-09-24 01:33:12 -07:00
Keavon Chambers
1ee5ffbbe8
Clean up web code errors and make CI enforce them
2024-09-24 01:33:02 -07:00
Keavon Chambers
14de67c5a7
Upgrade the third-party library license generation
2024-09-24 01:20:57 -07:00
Utsav Singh
b57c53a427
Fix broken Opacity slider in Layers panel ( #2004 )
...
Fix Opacity slider in Layers panel adding Transactions on_update and add Transactions when on_commit
2024-09-23 13:36:28 -07:00
Dennis Kobert
8a1089938e
Path Bool library code cleanup ( #2000 )
...
* Remove log statements
* Add feature gates to functions in path.rs
* Fix infinite parsing loop and add new test
* License tweaks
* Remove trailing zero in whole number floats
* Flatten visual-tests directory
* Code review
* Clean up printlines
* Add error handling to path parsing
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-09-23 12:16:31 +02:00
Keavon Chambers
3ddc052538
Improve type compatibility and clean up new node macro usages ( #2002 )
...
* Improve type compatibility
* More
2024-09-22 01:44:18 -07:00
James Lindsay
33df58eda9
Fix compilation on nightly ( #2001 )
...
Fix nightly compile
2024-09-21 13:48:33 -07:00
Dennis Kobert
cd4124a596
Improve node macro and add more diagnostics ( #1999 )
...
* Improve node macro ergonomics
* Fix type error in stub import
* Fix wasm nodes
* Code review
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-09-21 19:57:45 +00:00
Dennis Kobert
3eb98c6d6d
Add path-bool library ( #1952 )
...
* Add path-bool library
* Cleanup code
* Cargo format
* Integrate boolean ops into graphite
* Add test for editor crash
* Fix edge sort floating point instability
* Add unit test for red-dress failure
* Backport tests and aux functions
* Use curvature based sorting
* Convert linear cubic splines to line segments
* Deduplicate reversed path segments
* Fix epsilon for empty segments
* Remove parameter based intersection pruning
* Add support for reversed paths
* Add benchmark infrastructure
* Add intersection benchmark
* Add recursion bound
* Implement support for overlapping path segments
* Remove rouge prinln
* Fix sorting for bezier segments with one control point at the start of the segment
* Cleanup log statements
* Directly translate graphite paths to Path segments
* Round data before passing it to path_bool
* Fix flag_faces traversal order
* Add test for white dots in bottom right of painted dreams
* Make rounding configurable
* Update demo artwork to remove manual path modifications
* Convert from path segments to manipulator groups directly
* Remove dead code
* Fix clippy lints
* Replace functions in path segment with methods and add documentation
* Add more documentation
* Close subpaths
* Reorganize files and add README.md
* Add license information
* Code review
* Fix license info
* Adopt new node macro and fix demo artwork
* Close subpaths with Z
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-09-21 02:06:43 -07:00
James Lindsay
2febbfd698
Fix Graphene CLI crash ( #1993 )
...
Don't crash on the cli
2024-09-20 23:58:13 +00:00
James Lindsay
0d33a1ae3f
Use overlays to draw artboard names ( #1981 )
...
* Artboard label overlay
* Finish artboard overlays
* cargo fmt
* Update font styling
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-09-20 22:04:31 +00:00
Dennis Kobert
32da545a49
Fix blend modes and opacity on raster data ( #1996 )
...
* Apply alpha blending to images when using vello
* Fix bounds for image layer
* Fix rendering for non vello images
2024-09-20 20:42:39 +00:00