Commit Graph

2622 Commits

Author SHA1 Message Date
Firestar99 5df3196b58
Update cargo-gpu, Increase resilience towards partial cache clears (#3270) 2025-10-08 16:18:20 +00:00
Keavon Chambers 3364059e02
Add tooltip documentation to the graphic flattening nodes and string nodes (#3269) 2025-10-07 16:50:18 +02:00
Keavon Chambers 55a64064b0
Make the 'Decompose Rotation' node return degrees not radians; add tooltip documentation to transform nodes (#3268)
Make the 'Decompose Rotation' node return degrees not radians, and add tooltip documentation to transformation nodes
2025-10-07 09:36:35 +00:00
Keavon Chambers 91b08f4b4f Add tooltip documentation for animation-focused nodes (#3267) 2025-10-07 07:00:27 +00:00
Keavon Chambers fc9afce504
Add tooltip documentation for blending-focused nodes (#3266) 2025-10-07 00:23:50 +00:00
Keavon Chambers 6c033a2cd6
Tidy up tooltip documentation for several assorted nodes (#3265) 2025-10-07 01:28:03 +02:00
Timon 48ac24da14
Desktop: Fix frontend message response dispatch (#3247)
* One annoying debugging session later

Discovered that the editor handles frontend messages differently from other messages.
It requires all frontend messages to be fully processed before dispatching any resulting messages.

In the web frontend, this behavior happened implicitly because message dispatch is queued at the current end of the JavaScript execution queue.
For the desktop frontend, I added a vector to collect all responses until the entire batch of frontend messages is handled, and then dispatch them afterwards.

* Fix double click travel
2025-10-06 20:04:24 +00:00
Firestar99 bfba632100
Update cargo-gpu, remove legacy-target-specs to fix nix builds (#3257)
update cargo-gpu, remove legacy-target-specs to fix nix builds
2025-10-06 08:56:56 +00:00
Firestar99 074a33f58f
Enable debug logging for cargo-gpu (#3207)
debug cargo-gpu: debug logging
2025-10-05 11:19:21 +00:00
Keavon Chambers 593a89f2e2
Update content throughout the website (#3252) 2025-10-04 00:47:56 +00:00
Oliver Davies 3cfacccc61
New node: Remap (#3245)
* Added Remap node

* Addressed feedback for mapping range

* Removed extra defaults

* Apply suggestion from @Keavon

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-10-03 05:51:01 +00:00
Timon 7e8c6cc432
Desktop: Native export (#3188)
* Testing native export with raster convert implementation

* Jpg export

* Fix transparent export

* move texture conversion to runtime

* fixup

* move image encoding into editor export  function

* remove unused frontend message

* remove unused type
2025-10-01 21:13:40 +02:00
Dennis Kobert c697b61a7e
Clean up execution context for skipped node graph submissions (#3233) 2025-10-01 10:13:59 +00:00
Dennis Kobert bc66148d2b
Reset the overlay context for each draw request and use global font cache (#3231) 2025-09-28 15:36:08 +00:00
Dennis Kobert 84e44810d2
Run preprocessing on benchmarks and fix deadlock (#3230) 2025-09-27 12:36:29 +02:00
Dennis Kobert ffc74273cc
Implement Convert trait to convert between CPU and GPU images (#3194)
* Add upload texture trait

* Make convert trait use explicit converter

* Add gpu texture download implementation

* Add footprint to convert trait

* Cleanup texture upload / download

* Download wgpu textures aligned

* abstract texture download into converter helper

* rename module

not only doing uploads anymore
conversion looks like a ok name

* Remove into_iter call and intermediate vector allocation

---------

Co-authored-by: Timon Schelling <me@timon.zip>
2025-09-26 14:30:01 +02:00
Timon 4bb1d05fc3
Desktop: Add taskbar icon on Windows (#3225)
* include icon as resource on windows

* load icon
2025-09-26 14:30:01 +02:00
Timon d06c8164e1
Desktop: Forward multi-clicks (double/triple/etc.-clicks) to CEF correctly (#3224)
* fix multiclick

* Revert "fix multiclick"

This reverts commit c4130d12ee3f9e13b531da18d2285ea1a34a65b0.

* try another way

* use copy

* Use struct initializer syntax fror click tracker (#3226)

---------

Co-authored-by: Dennis Kobert <dennis@kobert.dev>
2025-09-26 14:29:56 +02:00
Timon ed22e6a63d
Desktop: Add rudimentary support for custom WGPU adapter selection (#3201)
* rudimentary custom wgpu adapter selection

* WgpuContextBuilder

* wasm fix

* fix wasm warnings

* Clean up

* Review suggestions

* fix
2025-09-25 14:38:26 +00:00
Dennis Kobert 4e47b5db93
Restructure gcore/text module and fix memory leak (#3221)
* Restructure gcore/text module and fix memory leak

* Remove unused import

* Fix default font fallback causing wrong caching and rename to TextContext

* Upgrade demo art
2025-09-25 15:29:07 +02:00
Timon d595089bb0
Desktop: Fix maximized window extending outside the screen on Windows (#3210)
Desktop: Fix window extending outside the screen on windows when maximized
2025-09-25 15:22:05 +02:00
Timon 04a2452333
Desktop: Support cursor icon change (#3223)
* browser console message forwarding

* replace target to make it easy to identify browser console messages

* use warn as per review comment

* cursor icon change

* fix win build
2025-09-25 11:23:19 +00:00
Timon b4be616de0
Desktop: Browser console message forwarding (#3193)
* browser console message forwarding

* replace target to make it easy to identify browser console messages

* use warn as per review comment
2025-09-25 10:42:07 +00:00
Timon d15f63f4fd
Ensure the LoadPreferences message is dispatched with None when no preferences exist (#3198)
* preference load message on default load

* review fixup
2025-09-23 20:19:16 +00:00
Timon 21f34ab19a
Desktop: Enable window resize controls on Wayland compositors (#3183)
wayland client side decorations
2025-09-21 12:17:05 +00:00
Timon 09bc891ab2
Desktop: Forward the pointer leave event to CEF (#3197)
* pointer leave

* make one-liner
2025-09-21 10:23:51 +00:00
Timon 46d5928724
Desktop: Fix window maximize and minimize (#3200)
Fix window maximize and minimize state
2025-09-20 23:48:47 +00: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 ac4665683b Blog post: Graphite community meetup in Germany 2025-09-20 01:59:05 -07:00
Salman Abuhaimed edc018d7b4
Fix Text node regression where font styles within a family are not being applied (#3186)
Fix text node styles not being applied
2025-09-18 19:11:50 -07:00
Keavon Chambers 9d15e56ce1 Fix and clean up typing-related flaws with the Math category of nodes 2025-09-18 16:37:01 -07:00
Keavon Chambers 7e3ab78ea4 Fix more flaws with 'Transform' node rad-to-deg migration; make 'Tangent on Path' also use degrees by default 2025-09-18 14:09:10 -07:00
Timon 3fe7c477e9
Desktop: Switch to the latest unreleased version of Winit (#3177)
* Use unstable winit

* Improve

* Remove unnecessary heap indirection
2025-09-17 16:40:43 +02:00
Keavon Chambers 4662cbbbc1 Make the 'Count Elements' and 'String Length' nodes return f64 for consistency with 'Instance Index' 2025-09-16 16:08:03 -07:00
Dennis Kobert e4d2805115
Add workaround for cache context nullification breaking nested loop indexes (#3178)
* Disable caching for the instance repeat etc. nodes

* Add usize implementation for caching and monitor nodes

* Change return type of instance index node back to f64

* Cleanup while loop

* Remove stray usize changes

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-09-16 21:59:43 +00:00
Dennis Kobert 390ce023ea
Fix regression when rotating a group, resulting in an incorrect transform cage bounding box (#3184)
Revert "Reuse click target bounding boxes for document bounds"

This reverts commit d9e8a71cd095971008b2e24fe90bbab9d6467115.
2025-09-16 13:41:44 -07:00
Timon ab55b3225d
Desktop: Window resize handling on Windows (#3167)
* Native window resize on windows

* Fix linux build

* Fix windows build

* try clean up

* clean up

* Add module comment

* FIx

* Review improvements

* Improve
2025-09-15 12:15:31 +00:00
Timon da330b6dd0
Desktop: Run CEF in incognito mode and delete root cache path on exit (#3137)
* Try

* Run cef in non persistence mode
2025-09-13 22:19:45 +00:00
Keavon Chambers a1df16bc9e Switch infinite color/gradient rendering to a more robust approach 2025-09-13 14:03:11 -07:00
Timon 944a6eeea2
Desktop: Hook up native window controls (#3161)
* Implement window controls

* Fix drag target size

* Maximize with drag area double click
2025-09-13 20:15:52 +00:00
Timon e97d5520e8
Desktop: Support receiving double click inputs (#3168)
* input support double clicks and clean up

* Review improvements
2025-09-13 12:40:31 +00:00
Salman Abuhaimed 3cc2aa8d89
Fix text node thread locals not being updated (#3173) 2025-09-13 11:33:00 +00:00
0SlowPoke0 75ad8d4abd
Fix a regression where G/R/S stayed active after switching from Pen or Shape tool (#3166)
* Fix: cancel active G/R/S transform when switching from Pen or Shape tool

* Fix typo

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-09-11 22:59:19 +00:00
Keavon Chambers 50f06c886f Fix crash from #3160 when migrating some old documents to use degrees not radians 2025-09-11 15:14:41 -07:00
0SlowPoke0 929dbdb14c
Fix a regression with G/R/S in the Path tool applying to the whole object instead of the selected points (#3164)
unify Shape Tool and Select Tool pivot handling
2025-09-11 12:53:30 -07:00
Timon 2483832227 Mark new documents as saved (#3165)
* clean up new document message handling

* Mark new documents as saved
2025-09-11 12:09:15 -07:00
Dennis Kobert 5836416632
Optimize editor performance for node selection, click target bounds, and batched messages (#3162)
* Don't clone messages during batch processing

* Improve selected nodes perf and memoize network hash computation

* Reuse click target bounding boxes for document bounds

* Early terminate computing the connected count

* Cleanup
2025-09-11 10:08:26 +00:00
Dennis Kobert ad5d8fcd37
Optimize rendering by caching intermediate render results when panning/zooming (#3147)
* Add svg render node

WIP

Fix error in context nullificaton node insertion

Correctly translate metadata

Fix warning

* Cleanup

* Remove color / gradient check and fix svg defs

* Implement viewport filling transform modification for vello

* Cleanup and comments

* Code review
2025-09-11 11:35:33 +02:00
Adesh Gupta 09ece9424d
Fix undo/redo history related issues with the Path tool (#3111)
* Fix transactions

* A little cleanup

* Fix bug in delete

* Code review

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-09-11 05:02:45 +00:00
Keavon Chambers 9a32e79853
Rename `NodeInput::Network` to `NodeInput::Import` (#3163) 2025-09-10 20:50:15 -07:00