Timon
9be207f4c5
Desktop: Update CEF to 141 ( #3352 )
...
update cef to 141
2025-11-08 11:59:02 +00:00
Dennis Kobert
68e67055d8
Update Linebender-related dependencies ( #3349 )
...
* Updates crates from linebender ecosystem
* Remove usages of decprecated Clip mix mode
2025-11-08 08:59:00 +01:00
Timon
5be9b1fabc
Desktop: Mac native menu bar ( #3301 )
...
* macos native menu bar
* fix nix build
* Add shortcut symbols to menu
* fix fmt
* fix vendoring
* cleanup intercept frontend message
* accept into editor message in queue function
2025-10-27 14:11:24 +00:00
Timon
52e98ea8a3
Desktop: Remove winit fork, fix nix package, and improve rendering ( #3307 )
...
Editor: Dev & CI / build (push) Has been cancelled
Editor: Dev & CI / cargo-deny (push) Has been cancelled
* reduce triangle count
* switch to winit repo after changes where upstreamed
* fix nix pkg
2025-10-25 00:47:36 +00:00
jneem
3a80560a68
Move from poly-cool to polycool ( #3309 )
2025-10-24 22:12:01 +00:00
Timon
7fbe440e73
Desktop: Bundle for Mac and Windows ( #3297 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
* add bundle for mac os and windows
* Fix bundle name
This name gets used as the display name of the app on mac os, shorter name looks better and is more consistent.
* preserve std out by running bin directly
* bundle placeholder on linux
* fix linux
2025-10-23 10:39:08 +00:00
Dennis Kobert
37bf2ade11
Improve profiling CI ( #3296 )
...
Editor: Dev & CI / build (push) Has been cancelled
Editor: Dev & CI / cargo-deny (push) Has been cancelled
* Imporve profiling CI
* Disable optimizations for graphene core in dev builds
2025-10-21 13:01:41 +00:00
Timon
39f4ccf8e0
Desktop: Fixup MacOS build ( #3295 )
...
Editor: Dev & CI / build (push) Has been cancelled
Editor: Dev & CI / cargo-deny (push) Has been cancelled
desktop mac os fixup
Co-authored-by: Dennis Kobert <dennis@kobert.dev>
2025-10-20 13:31:36 +00:00
blue linden
5acf50c1ef
Reduce Nix flake maintanace by eliminating need for cargoHash bumps ( #3292 )
...
Editor: Dev & CI / build (push) Has been cancelled
Editor: Dev & CI / cargo-deny (push) Has been cancelled
* prepare nix for hashless cargo builds, update rust-gpu to non-orphaned
commit
* match commit hashes to repos, update packages to make nix flake build
properly
* add nix build dir to gitignore
* Add npm TODO to flake.nix
* Update Cargo.lock
* Update TODO comment
2025-10-18 22:56:26 +00:00
Timon
e366e4d64e
Desktop: Update CEF to v140 ( #3277 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
* update cef to v140
* fix build
* update flake
2025-10-13 04:56:56 +00:00
Firestar99
5df3196b58
Update cargo-gpu, Increase resilience towards partial cache clears ( #3270 )
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
2025-10-08 16:18:20 +00:00
Firestar99
bfba632100
Update cargo-gpu, remove legacy-target-specs to fix nix builds ( #3257 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
update cargo-gpu, remove legacy-target-specs to fix nix builds
2025-10-06 08:56:56 +00:00
Timon
21f34ab19a
Desktop: Enable window resize controls on Wayland compositors ( #3183 )
...
Editor: Dev & CI / build (push) Has been cancelled
Editor: Dev & CI / cargo-deny (push) Has been cancelled
wayland client side decorations
2025-09-21 12:17:05 +00:00
Timon
3fe7c477e9
Desktop: Switch to the latest unreleased version of Winit ( #3177 )
...
Editor: Dev & CI / build (push) Has been cancelled
Editor: Dev & CI / cargo-deny (push) Has been cancelled
* Use unstable winit
* Improve
* Remove unnecessary heap indirection
2025-09-17 16:40:43 +02: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
Timon
9411612d7f
Move shader entrypoints to separate crate ( #3157 )
2025-09-10 10:20:45 +00:00
Firestar99
f12b4da549
Shaders: add BufferStruct to support bool and enums ( #3109 )
...
* node-macro: modernize `node` macro
* node-macro: add `CrateIdent` struct containing resolved crate paths
* shaders: add trait `BufferStruct` and derive macro
* shaders: `gamma_correction` and `channel_mixer` gpu nodes
* shaders: `selective_color` gpu node
* shaders: `brightness_contrast_classic` gpu node
* shaders: append GPU to display name
* node-macro: fixup doc links
* shaders: consistently append " GPU" to all shader node names
2025-09-05 16:32:41 +00:00
Firestar99
a10103311e
Shaders: rust-gpu integration to compile shader nodes to WGSL ( #3097 )
...
Editor: Dev & CI / build (push) Has been cancelled
Editor: Dev & CI / cargo-deny (push) Has been cancelled
* shaders: shader compilation setup
* nix: use rustc_codegen_spirv.so from nix
* shaders: codegen for per_pixel_adjust shader nodes
* shaders: disable nodes needing bool
* shaders: `#[repr(u32)]` some enums
* shaders: add lint ignores from rust-gpu
* shaders: fix node-macro tests
* gcore-shaders: toml cleanup
* shader-nodes feature: put rust-gpu to wgsl compile behind feature gate
* shaders: fix use TokenStream2
* shaders: allow providing shader externally
* Update iai runner in workflow
---------
Co-authored-by: Timon Schelling <me@timon.zip>
Co-authored-by: Dennis Kobert <dennis@kobert.dev>
2025-09-02 14:10:32 +00:00
Firestar99
be3de511f2
Desktop: Pin CEF version ( #3113 )
...
Editor: Dev & CI / build (push) Has been cancelled
Editor: Dev & CI / cargo-deny (push) Has been cancelled
Fixed CEF cargo dependency so `cargo update` does not update it
2025-08-31 10:22:34 +00:00
Keavon Chambers
29684dde45
Update Rust dependencies ( #3112 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
* Update Rust dependencies
* Bump versions
* Try older ctor
2025-08-30 20:06:56 -07:00
Firestar99
ce1cd1706b
Disable proc-macros crate from being tested due to cargo bug ( #3103 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
* cargo: remove unused `editor/ron` feature
* cargo: add wgpu-executor as a member, sort list
* cargo: test every crate by default
* cargo: disable testing of `graphite-proc-macros`
2025-08-29 12:25:35 +02:00
Timon
1d4d1026d4
Desktop: Make embedded resources optional ( #3094 )
...
* Make embedding resources optional
* Move remaining cef rc to internal module
* Move embedded resources to separate crate
* Review fixup
* Fix
* Fix read
* Add read error
2025-08-28 17:18:18 +00:00
Firestar99
a744499f4f
Shaders: more graster-nodes no-std fixups ( #3090 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
* gcore-shaders: fix missing `num-traits/libm` features
* graster-nodes: fix missing cfg on use statements
* shaders: use unchecked Color constructors
* graster-nodes: remove async from shader nodes not needing it
* gcore-shaders: remove explicit fn pointer
* graster-nodes: make kurbo std-only
* graster-nodes: replace glam reexport with normal dep
* gcore: impl Display for ProtoNodeIdentifier
* unify glam workspace dep
2025-08-26 18:25:05 +00:00
Timon
2c8913416d
Desktop: Move wrapper to separate crate ( #3073 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
Move desktop wrapper to separate crate
2025-08-20 15:41:34 +00:00
Dennis Kobert
7c30f6168b
Improve snapping performance ( #3067 )
...
* Use lyon_geom for intersection calculation of bezier segments
* Implement approximate nearest point calculation and loosen bounding boxes
* Add algorithm explanation
* Update editor/src/messages/tool/common_functionality/snapping/layer_snapper.rs
Co-authored-by: Keavon Chambers <keavon@keavon.com>
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-08-20 10:47:58 +02:00
Firestar99
0a53eae4e0
Remove unused cargo dependencies ( #3063 )
...
* cargo shear
* fix warnings on master
* fix docs needing dev-dependency
2025-08-18 11:26:44 -07:00
Keavon Chambers
3bcec37493
Remove the deprecated/archived Bezier-rs library from the repo ( #3058 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
Website / build (push) Has been cancelled
Remove the Bezier-rs library from the repo
2025-08-16 17:29:00 -07:00
Priyanshu
d22b2ca927
Refactor the Centroid node and Subpath struct and methods to use Kurbo, eliminating all remaining usages of Bezier-rs ( #3036 )
...
* define Subpath struct in gcore and refactor node-graph
* Refactor few methods
* refactoring worked!
* refactor centoid area and length
* remove unused
* cleanup
* fix pathseg_points function
* fix tranforming segments
* fix segment intersection
* refactor to_path_segments fn in gpath-bool crate
* refactor gcraft
* add bezier-rs dep
* Code review the editor directory
* use path-bool for solving roots
* Code review
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-08-16 13:39:25 -07:00
Timon
2995113b39
Desktop: Update CEF to 139.0.1 ( #3046 )
...
Editor: Dev & CI / cargo-deny (push) Waiting to run
Editor: Dev & CI / build (push) Waiting to run
Update cef to 139.0.1
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-08-13 12:55:42 -07:00
jneem
6c3b7b23c5
Simplify Bezier-rs using poly-cool as the root finder ( #3031 )
...
* Convert tangents_to_point
* Convert normals_to_point
* Port over roots and project
* Remove symmetrical_basis
* Code style nits
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-08-13 19:10:10 +00:00
Timon
5f2432cacf
Desktop: Open links in default browser and prevent popups ( #3006 )
...
* Deny all browser popups
* Open links with default browser
* Fix review comments
2025-08-06 15:28:10 +00:00
Firestar99
caa228a1ec
Shaders: graster-nodes no-std fixups ( #2984 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
* wgpu-executor: remove useless features
* wgpu-executor: cleanup copy-pasted code
* gcore-shaders: no_std fixups
2025-08-06 14:10:08 +00:00
Timon
7cb42b9523
Desktop: Add native file dialogs ( #2939 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
* Add native open file dialog
* Add native save file dialog
* Fix integer underflow in defer message handler
* Update nix flake
* Cleanup
---------
Co-authored-by: Dennis Kobert <dennis@kobert.dev>
2025-08-04 13:58:33 +00:00
Firestar99
4fec24893e
Shaders: add gcore-shaders and make graster-nodes no-std ( #2925 )
...
* gcore-shaders: add crate, move `color` and `blending` from gcore
* gcore-shaders: move `AsU32`
* gcore-shaders: move `ChoiceType`, switch `Cow` for `&str`, adjust node macro
* gcore-shaders: move `registry::types`
* gcore-shaders: move `context::Ctx`
* raster-nodes: make it `no_std` with `std` feature
* gcore-shaders: fix doctest
2025-07-25 17:53:26 +00:00
Adam Gerhant
735d58a647
Desktop: Remove unnecessary dependencies in the desktop crate ( #2934 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
* remove unnecessary dependencies
* Add start-desktop
2025-07-25 01:20:27 -07:00
Timon
9f4f3681c3
Desktop set cef data and cache directory ( #2927 )
2025-07-24 16:56:57 +00:00
Firestar99
59f3835c5d
Shaders: node macro ( #2923 )
...
* node_macro: cleanup attr parsing
* node_macro: add `cfg()` attr to feature gate node impl
* node_macro: add `shader_nodes` option
* node_macro: fixup tests
2025-07-24 12:58:30 +00:00
Timon
30abc92900
Implement basic desktop app with chromium embeded framework ( #2874 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
* Remove tauri based desktop app
* Allow bzip-1.0.6 license
* Implement basic cef based desktop app
* Cleanup build setup
* Use wait until and execute cef loop more frequently
* Remove custom do browser work event
* Move WinitApp into its own module
* Cleanup event handling
* Cleanup + Scheudule cef message loop work
* Fix cpu overheating on idle: https://xkcd.com/1172/
* Use tracing crate for logging instead of println
* Rebase to main
---------
Co-authored-by: Dennis Kobert <dennis@kobert.dev>
2025-07-23 20:27:55 +02:00
mTvare
032f9bdf72
Upgrade vello to version 0.5.0 and wgpu to version 25 ( #2890 )
...
Editor: Dev & CI / build (push) Waiting to run
Editor: Dev & CI / cargo-deny (push) Waiting to run
* update: vello
* fix compile errors
* create target texture lazily
* fix TextureBlitter texture format mismatch
* use `futures:🔒 :Mutex` instead of std Mutex
---------
Co-authored-by: Firestar99 <firestar99@sydow.cloud>
2025-07-22 19:51:02 +02:00
Firestar99
8a0241f0fa
Fix running tests locally; fix migrations for relocated nodes ( #2805 )
...
* fix `BoundingBox for Raster<GPU>` when `wgpu` feature is disabled
* fix `tinyvec` crate not being `std` by default
* fixup migration for `CoordinateValueNode`
* fixup migration for raster nodes
2025-07-04 02:56:22 -07:00
Firestar99
a182a7347e
Extract gbrush ( #2784 )
Editor: Dev & CI / build (push) Has been cancelled
Editor: Dev & CI / cargo-deny (push) Has been cancelled
2025-07-01 18:38:47 +00:00
Firestar99
602d7e8bd1
Extract graster-nodes ( #2783 )
2025-07-01 18:12:12 +00:00
Salman Abuhaimed
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
Firestar99
ecd7999ca7
Extract gmath_nodes from gcore::ops, create mods debug and extract_xy ( #2764 )
2025-06-28 00:04:24 +02:00
Firestar99
9c4ab34a58
Extract gsvg_renderer from gcore, remove gcore/vello feature ( #2760 )
...
Extract `gsvg_renderer` from `gcore`, remove `gcore/vello` feature
2025-06-27 13:47:46 +00:00
Firestar99
ffc6c5532b
Extract gpath_bool from mod gstd::ops path_bool-related nodes ( #2762 )
...
* cargo shear
* Extract `gpath_bool` from `mod gstd::ops` path_bool-related nodes
2025-06-27 13:12:08 +00:00
Dennis Kobert
a40a760f27
Add automatic type conversion and the node graph preprocessor ( #2478 )
...
* Prototype document network level into node insertion
* Implement Convert trait / node for places we can't use Into
* Add isize/usize and i128/u128 implementations for Convert trait
* Factor out substitutions into preprocessor crate
* Simplify layer node further
* Code review
* Mark preprocessed networks as generated
* Revert changes to layer node definition
* Skip generated flag for serialization
* Don't expand for tests
* Code review
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-06-26 16:10:14 -07:00
Firestar99
0e8eb481bf
Extract gapplication_io from gcore ( #2742 )
...
move `gcore::application_io` into the new crate `gapplication-io`, remove features `wasm` and `wgpu` from `gcore`
2025-06-23 11:35:14 +02:00
Firestar99
e520c21b66
Remove the serde feature and instead just always require it ( #2737 )
...
workspace: remove feature `serde`, always require it instead
2025-06-21 16:52:47 -07:00
Firestar99
ca5ca863cc
Unify feature dependencies with workspace dependencies ( #2736 )
...
* graph-craft: fix direct wasm build
* graph-craft: fix no serde feature failing to compile
* graph-craft: make wgpu-executor properly optional
* workspace: unify `image` formats in workspace
* workspace: turn most dependencies into workspace deps, no actual changes
* workspace: unify dependency features in workspace dep
2025-06-21 16:26:25 -07:00