Commit graph

108 commits

Author SHA1 Message Date
alonso.torres
69135ef8c7 ♻️ Refactor wasm shapes state management 2025-07-08 08:30:40 +02:00
alonso.torres
3d374e8e97 ♻️ Refactor mutability modifiers in wasm 2025-07-01 12:47:31 +02:00
alonso.torres
8dcb376b18 Add drop grid cells in wasm 2025-06-30 10:28:59 +02:00
Elena Torro
134fb1ab4c 🔧 Add vertical alignment for text shapes 2025-06-23 16:45:25 +02:00
Alejandro Alonso
d71fa659d5 🐛 Fix asynchronous content rendering 2025-06-19 14:03:40 +02:00
alonso.torres
5b4cd9f4f1 🐛 Fix problem when moving masks, bools, groups with wasm 2025-06-19 13:03:25 +02:00
Alejandro Alonso
1c7aea4b84 🐛 Fix focus mode for wasm render 2025-06-17 16:42:45 +02:00
alonso.torres
0be8a6e0e6 Add grid helpers to wasm 2025-06-16 09:55:35 +02:00
alonso.torres
bcfa9a82ea Add scale content to render wasm 2025-05-28 16:40:57 +02:00
alonso.torres
a85a42d367 🐛 Fix some problems with modifiers 2025-05-27 09:33:33 +02:00
Belén Albeza
f9bbf2d524
Improve paths deserialization (wasm) (#6501)
* ♻️ Refactor path wasm code to its own wasm submodule

* ♻️ Use unified enum for RawSegmentData and transmute to deserialize

* ♻️ Move set_shape_path_attrs to wasm::paths module

* 💄 Unify repr declarations
2025-05-23 08:48:55 +02:00
Aitor Moreno
d54a7d0401
Merge pull request #6526 from penpot/superalex-improve-zoom-performance-and-behaviour
🐛 Fix zoom performance and behaviour
2025-05-22 12:15:38 +02:00
Alejandro Alonso
3597e5bb54 🐛 Fix zoom performance and behaviour 2025-05-22 10:29:43 +02:00
alonso.torres
6cd2c712ab Pixel precision for new renderer 2025-05-21 10:42:03 +02:00
Aitor Moreno
ef95e3ecb0 ♻️ Refactor tile iteration 2025-05-19 16:24:52 +02:00
Belén Albeza
8afd217a80
🔧 Enable back clippy rules (#6492)
* 🔧 Fix lint script (rust)

* 🔧 Temporarily add clippy rules to ignore so lint script passes

* 💄 Fix clippy rule crate_in_macro_def

* 💄 Fix clippy rule redundant-static-lifetimes

* 💄 Fix clippy rule unnecessary_cast

* 💄 Fix clippy rule nonminimal_bool

* 💄 Fix clippy rule redundant_pattern_matching

* 💄 Fix clippy rule assign_op_pattern

* 💄 Fix clippy rule needless_lifetimes

* 💄 Fix clippy rule for_kv_map

* 💄 Fix clippy rule ptr_arg

* 💄 Fix clippy rule match_like_matches_macro

* 💄 Fix clippy rule macro_metavars_in_unsafe

* 💄 Fix clippy rule map_clone

* 💄 Fix clippy rule wrong_self_convention

* 💄 Fix clippy rule vec_box

* 💄 Fix clippy rule useless_format

* 💄 Fix clippy rule unwrap_or_default

* 💄 Fix clippy rule unused_unit

* 💄 Fix clippy rule unnecessary_to_owned

* 💄 Fix clippy rule too_many_arguments

* 💄 Fix clippy rule slow_vector_initialization

* 💄 Fix clippy rule single_match

* 💄 Fix clippy rule redundant_field_names

* 💄 Fix clippy rule rendudant_closure

* 💄 Fix clippy rule needless_return

* 💄 Fix clippy rule needless_range_loop

* 💄 Fix clippy rule needless_borrows_for_generic_args

* 💄 Fix clippy rule needless-borrow

* 💄 Fix clippy rule missing_transmute_annotations

* 💄 Fix clippy rule map_entry

* 💄 Fix clippy rule manual_map

* 💄 Fix clippy rule len_zero

* 💄 Fix clippy rule from_over_into

* 💄 Fix clippy rule field_reassign_with_default

* 💄 Fix clippy rule enum_variant_names

* 💄 Fix clippy rule derivable_impls

* 💄 Fix clippy rule clone_on_copy

* 💄 Fix clippy rule box_collection

* 🔧 Make lint script also check test config target

* 🔧 Remove cargo-watch as a lib dependency

* 💄 Fix clippy rule for join_bounds

* 🔧 Fix lint script return code

---------

Co-authored-by: alonso.torres <alonso.torres@kaleidos.net>
2025-05-19 11:14:55 +02:00
alonso.torres
fef08dfa18 Set selrect for new render modifiers 2025-05-14 11:21:43 +02:00
Alejandro Alonso
03b4fe3558 🎉 Add shapes buffer to improve memory allocation 2025-05-09 15:00:02 +02:00
alonso.torres
88e5209856 Apply modifiers changes into data 2025-04-30 09:34:13 +02:00
Belén Albeza
e7b74939cb 💄 Change to more idiomatic code in main.rs functions 2025-04-24 12:20:34 +02:00
Aitor Moreno
caf13eb774 ♻️ Refactor how rebuild_tiles works 2025-04-24 07:34:35 +02:00
Belén Albeza
f500a00d04 ♻️ Extract wasm-functions for fills and strokes out of main.rs 2025-04-16 14:09:19 +02:00
Belén Albeza
64a2a08d24 ♻️ Refactor gradient parsing from bytes 2025-04-16 14:08:38 +02:00
Belén Albeza
1f58f96e88 ♻️ Refactor serializing gradient fill 2025-04-16 14:07:35 +02:00
Belén Albeza
dc3d802d3d 🎉 Serialize radial fills in one go 2025-04-16 14:07:35 +02:00
Belén Albeza
5765d1c56c ♻️ Switch to a f32 offset for gradient stops 2025-04-16 14:07:35 +02:00
Belén Albeza
abcd050c69 ♻️ Adapt linear gradient type so it can be used for radial too (wasm) 2025-04-16 14:07:33 +02:00
Belén Albeza
fccd1a5bd7 Send fill + stops data in one call for linear fills 2025-04-16 14:05:39 +02:00
alonso.torres
daf048e258 Reparent modifiers 2025-04-16 11:27:51 +02:00
Aitor Moreno
304c44048f
♻️ Refactor how rAF/cAF is handled (#6241) 2025-04-15 15:45:28 +02:00
Aitor Moreno
d880307a9b
🎉 Add performance measuring functions (#6229) 2025-04-10 11:33:22 +02:00
Elena Torro
953db56a0d 🐛 Remove children correctly 2025-04-09 14:39:21 +02:00
Belén Albeza
6f91da9461
🔧 Fix Rust tests (#6208)
* 🔧 Fix test script (rust wasm)

* 🔧 Make code compile in test mode + using aarch64 as a target for tests
2025-04-07 14:08:41 +02:00
Elena Torró
76ffc2d268
🔧 Log error on process animation frame (#6182) 2025-04-01 09:01:49 +02:00
Alejandro Alonso
6953a57333 🎉 Avoid full tiles rebuild on set modifiers 2025-03-28 11:55:54 +01:00
Alejandro Alonso
7728d5b317 🎉 Improve performance reducing unnecessary calls to set-objects 2025-03-27 15:47:03 +01:00
Alonso Torres
83d41dba6f
Serialization of grid layout data (#6148)
*  Add serializators for grid layout properties

*  Extract serializers for wasm api module
2025-03-26 12:10:31 +01:00
Alejandro
065b50f5a2
🐛 Fix asynchronous content dependant rendering (#6142)
* 🐛 Fix custom fonts rendering

* 🐛 Fix asynchronous content dependant rendering

* 🎉 Renaming clear_cache to clear_drawing_cache
2025-03-25 09:49:47 +01:00
Alejandro Alonso
ca86137d0f 🐛 Fix wasm state warning 2025-03-20 18:18:50 +01:00
Aitor Moreno
084816fb9f 🎉 Tile rendering system 2025-03-20 11:14:14 +01:00
Alonso Torres
fa0da3a695
Flex layout modifiers wasm implementation
*  Flex layout modifiers wasm implementation

*  Flex auto modifiers propagation
2025-03-17 10:46:32 +01:00
Belén Albeza
eb6d2fb0eb
🎉 Store custom fonts (ttfs) and use them to write texts (wasm) (#6050) 2025-03-14 12:45:15 +01:00
elenatorro
0dbf00a767 🔧 Use with_state and with_current_state macros allowing static_mut_refs only on STATE 2025-03-07 15:24:04 +01:00
elenatorro
3a8ba4cbee 🔧 Avoid using global static mut variables when possible 2025-03-07 15:07:31 +01:00
Belén Albeza
aa468e2153
🎉 Render plain text
* 🎉 Serialize text content (wasm)

* ♻️ Refactor functions in main to wasm module

* 🎉 Stub rendering of paragraph text (wasm)

* 📎 Clean up commented code
2025-03-04 11:54:52 +01:00
alonso.torres
80d5272248 Serialize layout data 2025-02-25 15:43:12 +01:00
alonso.torres
c48d862d0f 🐛 Fix problem with gradient in strokes 2025-02-25 11:29:57 +01:00
alonso.torres
8c1e18b1cd 🐛 Fix problem with images 2025-02-20 17:57:36 +01:00
Alonso Torres
6cb1aa24cd
Add constraints calculation on WASM (#5894)
*  Add constraints calculation on WASM

*  Fix after review
2025-02-19 10:40:04 +01:00
alonso.torres
400e5f60f2 🐛 Fix problem with cache 2025-02-18 10:00:57 +01:00