Commit Graph

  • 68d2a06c80 Add per-channel parameters to the 'Levels' node and make its midtones a gamma value (#4535) master Keavon Chambers 2026-09-14 22:51:43 -07:00
  • 0bede7969c Add dashed links between spectrum markers and typed marker scales to the shared spectrum sections (#4534) Keavon Chambers 2026-09-14 20:53:06 -07:00
  • e38926004f Add a selection mode to the spectrum widget so only the gradient editor supports having a highlighted stop (#4533) Keavon Chambers 2026-09-14 19:55:38 -07:00
  • e8f7366a43 Show a range slider beside bounded range-mode numbers in the Properties panel (#4532) Keavon Chambers 2026-09-14 18:49:09 -07:00
  • edf263342c Desktop: Read and write the clipboard via the winit data transfer API desktop-winit-clipboard Timon 2026-09-04 19:09:50 +00:00
  • 1f92109a80 Desktop: Upgrade winit and port DnD to the new data transfer API Timon 2026-09-04 18:56:13 +00:00
  • 5e705aaa04 Add a range slider mode to the spectrum widget and slider rows to node properties (#4531) Keavon Chambers 2026-09-14 18:03:31 -07:00
  • cc444da637 Improve accuracy of the 'Channel Mixer', 'Selective Color', 'Posterize', and 'Exposure' nodes (#4530) Keavon Chambers 2026-09-14 16:35:52 -07:00
  • 1940e430dc Replace the 'Luminance' node with a 'Desaturate' node with a better selection of desaturation methods (#4529) Keavon Chambers 2026-09-14 14:34:55 -07:00
  • eaadea6593 Fix cargo-about install command (#4512) James Lindsay 2026-09-14 17:34:08 +00:00
  • 561fc76638 Let vector modifier nodes operate on graphic content by recursing into groups master-rebase-git Dennis Kobert 2026-09-14 01:25:19 +02:00
  • fd640459a2 Add a generic map over a graphic's leaves, reaching every depth Dennis Kobert 2026-09-14 01:25:04 +02:00
  • 344d21768f Make the 'Boolean Operation' node ignore raster, color, and gradient content (#4430) Keavon Chambers 2026-08-11 14:22:24 -07:00
  • 2badd926c4 Fix clipping masks, click targets, and bounds when rendering Vector[] and flattened graphic wrappers (#4429) Keavon Chambers 2026-08-11 13:31:48 -07:00
  • d9271a66b2 Fix style controls corrupting stack nodes like Transform that can't host blending or paint nodes (#4428) Keavon Chambers 2026-08-11 12:48:57 -07:00
  • 8a16580623 Make the 'Index Points' node index within each vector element instead of across the whole list (#4427) Keavon Chambers 2026-08-10 21:04:33 -07:00
  • f3aeec3c02 New node: 'Gradient to Colors' for unwrapping a gradient ramp into its colors (#4425) Keavon Chambers 2026-08-08 04:37:44 -07:00
  • 2baf9a8192 New nodes: 'Gradient Reverse', 'Gradient Shift', and 'Gradient Stretch' nodes for rearranging a ramp's stops (#4424) Keavon Chambers 2026-08-08 03:09:06 -07:00
  • 344535d143 Fix read-only widget appearance and focus, and keep ColorInput picks surviving a layout diff (#4423) Keavon Chambers 2026-08-08 01:45:53 -07:00
  • 23c4ad530b Rename the 'Sample Gradient' node to 'Evaluate Gradient' (#4422) Keavon Chambers 2026-08-08 01:20:55 -07:00
  • 6a95a9bc4f Drop CSS vendor prefixes and compat workarounds now obsolete in modern browsers (#4421) Keavon Chambers 2026-08-07 19:40:29 -07:00
  • 567e5cb9dd Clean up CSS color opacity application to theme colors (#4420) Keavon Chambers 2026-08-07 19:21:17 -07:00
  • f1512f5d2d Fix Vello rendering incompatibility with its gradients using premultiplied alpha instead of SVG's straight (#4419) Keavon Chambers 2026-08-07 18:45:12 -07:00
  • 6e32e97ba1 Add a gradient interpolation attribute with Stepped, Linear (existing), and Smooth modes (#4418) Keavon Chambers 2026-08-07 16:43:36 -07:00
  • 244a7e0f78 Add a "Cyclic" gradient option that closes the ramp into a seamless loop (#4416) Keavon Chambers 2026-08-06 18:52:00 -07:00
  • a35143586a Add the "Perceptual" and "Classic" families of gradient spaces with OkLab as the new default (#4415) Keavon Chambers 2026-08-06 02:40:25 -07:00
  • 11dfc27645 Make gradient evaluation follow the ramp's interpolation space attribute (#4414) Keavon Chambers 2026-08-05 19:32:51 -07:00
  • 3678826a48 Give whole-expanse gradient layers a transform cage based on the gradient line (#4413) Keavon Chambers 2026-08-05 17:47:54 -07:00
  • f8975b7d94 Add a gradient interpolation space attribute with sRGB Gamma (existing) and sRGB Linear (new) (#4412) Keavon Chambers 2026-08-05 15:58:25 -07:00
  • ea6f45ddc0 Fix node shaking causing an offset from the pointer for the rest of the drag (#4411) Keavon Chambers 2026-08-05 01:26:41 -07:00
  • c71f78edb5 Add a Clear gradient spread that cuts off to transparency beyond the ends (#4410) Keavon Chambers 2026-08-05 00:27:18 -07:00
  • 344e24f0c2 Bind the Gradient tool's spread to the gradient value's ramp instead of a Gradient Spread node (#4409) Keavon Chambers 2026-08-04 23:39:40 -07:00
  • ba5b25112b Build radio widget entries from choice type metadata so variants display their icons (#4408) Keavon Chambers 2026-08-04 21:16:14 -07:00
  • b635e6fa02 Let the Fill and Gradient tools paint blank layers with whole-expanse colors and gradients (#4407) Keavon Chambers 2026-08-04 18:32:15 -07:00
  • 4da366acf1 Rename gradient type to gradient form (#4405) Keavon Chambers 2026-08-04 05:51:10 -07:00
  • 167da6a210 Rename spread method to gradient spread so it matches the other gradient attribute names (#4404) Keavon Chambers 2026-08-04 05:15:21 -07:00
  • 27f1e8a65b Move the gradient-focused nodes from the Color category to a new Gradient category (#4403) Keavon Chambers 2026-08-04 04:27:37 -07:00
  • c5cb466e28 Move the gradient spread method into GradientRamp and the color picker popover (#4402) Keavon Chambers 2026-08-04 04:08:21 -07:00
  • 6480de274e Ban the null literal via ESLint and replace existing usages with undefined or truthiness checks (#4401) Keavon Chambers 2026-08-03 23:47:29 -07:00
  • 360321e0ce Wrap serialized gradient stops in a new GradientRamp struct and unify FillChoice (#4400) Keavon Chambers 2026-08-03 23:23:41 -07:00
  • 4d8729d87c Add a drill-in button beside Data panel gradient preview widgets (#4398) Keavon Chambers 2026-08-03 04:31:48 -07:00
  • 86d4106592 Rework Gradient into a newtype of List<Color> with optional position and midpoint attributes (#4397) Keavon Chambers 2026-08-03 04:05:02 -07:00
  • b78e4b107e Remove custom (de)serializers from the DashPattern and BoxCorners TaggedValue variants (#4394) Keavon Chambers 2026-08-02 01:00:46 -07:00
  • 69148d1b36 Replace raw node input indices with compile-time parameter symbols (#4387) Keavon Chambers 2026-07-28 11:17:30 -07:00
  • e39782c957 Fix the math parser's implicit multiplication precedence and other regressions from the rewrite (#4383) Keavon Chambers 2026-07-26 16:41:51 -07:00
  • b42b00febe Move the math expression parser from Pest to Chumsky and add more features (#2685) urisinger 2026-07-27 00:14:39 +03:00
  • c77359bedf Add a Connect Cells option to the 'Grid' node (#4374) Keavon Chambers 2026-07-26 12:15:14 -07:00
  • 24ba1e047c Box big enum variants to satisfy Clippy's lint warnings (#4292) Keavon Chambers 2026-07-26 11:50:23 -07:00
  • cd03202060 Deduplicate the network interface query helpers and collapse TransientMetadata into TransientCache (#4382) Keavon Chambers 2026-07-26 02:24:33 -07:00
  • b6accaf4bd Fix wrong-input disconnects, ghost wire caches, and partial import removal in the network interface (#4381) Keavon Chambers 2026-07-26 01:33:05 -07:00
  • e666838580 Move session state out of the network interface caches and replace the selection hijacks with explicit parameters (#4379) Keavon Chambers 2026-07-26 01:09:14 -07:00
  • 09f8864450 Make the network interface's queries take &self instead of &mut self (#4378) Keavon Chambers 2026-07-26 00:09:03 -07:00
  • d03adcae83 Replace NodeTemplate's parallel node and metadata trees with a single flat recursive shape (#4377) Keavon Chambers 2026-07-25 20:37:36 -07:00
  • 72b3a883a7 Introduce the NetworkView read cursor with typed errors and convert the network queries onto it (#4376) Keavon Chambers 2026-07-25 19:15:15 -07:00
  • 81398ca0cb Make double-clicking a text layer begin editing in shallow select mode, not just deep select mode (#4373) Keavon Chambers 2026-07-24 14:02:40 -07:00
  • fded44c293 Break apart the enormous network_interface.rs into submodules (#4371) Keavon Chambers 2026-07-23 22:43:19 -07:00
  • 79944bd6d0 Add additional tests to the network interface (#4370) Keavon Chambers 2026-07-23 22:20:55 -07:00
  • ff18b33362 Fix assorted node graph correctness bugs and replace network interface panics with logged errors (#4364) Keavon Chambers 2026-07-23 18:35:18 -07:00
  • f4609e0e3b Improve number fields/labels in the UI to filter out floating point noise and truncate at correct precision (#4363) Keavon Chambers 2026-07-23 00:22:13 -07:00
  • 31239f77c6 Make the 'Angle Between' node report the signed angle and fix its zero-vector output (#4362) Keavon Chambers 2026-07-22 22:39:36 -07:00
  • 85dd39c35b New nodes: 'Sign', 'Distance', 'Cross Product', and 'Lerp' (#4361) Keavon Chambers 2026-07-22 22:03:50 -07:00
  • 28f8325a64 Add Vec2 support to the scalar math operator nodes (#4360) Keavon Chambers 2026-07-22 19:42:02 -07:00
  • 5dbcdaf0c2 Fix the 'Divide' node dividing partially-zero Vec2 denominators and the 'Logarithm' node misdetecting base e (#4359) Keavon Chambers 2026-07-22 18:41:28 -07:00
  • 0af05aa5ff Desktop: Stop compiling the editor into the wasm wrapper (#4348) Timon 2026-07-18 12:04:07 +02:00
  • 83d24251d7 Rename the nodes 'Length' -> 'Magnitude', 'Flatten Path' -> 'Combine Paths', 'Vec2 Value' -> 'Combine Vec2', and add a new 'Vec2 Value' node (#4349) Keavon Chambers 2026-07-17 09:43:04 -07:00
  • 095f169b2f New nodes: 'Voronoi Cells', 'Tesselate', and 'Relax Points' (#4345) Keavon Chambers 2026-07-17 01:40:39 -07:00
  • cba642a7a1 New nodes: Sum, Average, Minimum, Maximum, Any, All (#4344) Keavon Chambers 2026-07-15 23:41:46 -07:00
  • 67690d22d4 Convert the node catalog to rank-polymorphic kernels, materialize stored values as ranked wires, and display wire rank in the graph Keavon Chambers 2026-07-20 21:27:13 -07:00
  • 5bc41c4c58 Reshape the node catalog: rename the list access nodes, split Text to Vector, reinstate Upload Texture as a proto node, and delete the vestigial debug nodes Keavon Chambers 2026-07-20 16:37:43 -07:00
  • 7ddab438d1 Split Fill's optional transform into a has-transform toggle and add the DashPattern and BoxCorners value types Keavon Chambers 2026-07-20 16:13:58 -07:00
  • 6acc0638e4 Add Graphic::None and store paint choices as plain color, gradient, and no-paint values Keavon Chambers 2026-07-20 15:50:06 -07:00
  • fd7f67b3e9 Rename GradientStops to Gradient and the legacy Gradient/Fill structs to LegacyGradient/LegacyFill Keavon Chambers 2026-07-20 15:27:21 -07:00
  • 21eae1e2a1 Carry eight dropped columns through flatten_graphic Dennis Kobert 2026-09-11 15:04:21 +00:00
  • 9311c957c4 Carry four dropped columns through the flatten path kernels Dennis Kobert 2026-09-11 15:04:21 +00:00
  • 5599f1d652 Give VectorRow a top lane and thread it through the walk recursion Dennis Kobert 2026-09-11 15:04:21 +00:00
  • 413547401e Carry the boolean operation kernels through lane 0 map_element Dennis Kobert 2026-09-11 15:04:20 +00:00
  • 04966278d4 Build a gathered subject's copy plan on collapse and reject an empty carry Dennis Kobert 2026-09-11 14:11:11 +00:00
  • 5035fae83b Adopt map_element in the mirror kernels Dennis Kobert 2026-09-11 14:10:57 +00:00
  • b54c1a45b0 Adopt map_element in the assign colors kernels and drop the dead carried_lane_attrs helper Dennis Kobert 2026-09-11 14:10:56 +00:00
  • aed7855002 Add a map_element primitive to Lane and teach the node macro to emit it Dennis Kobert 2026-09-11 14:10:56 +00:00
  • 1a20718a3b Box the largest message and update payloads Dennis Kobert 2026-09-09 15:39:37 +00:00
  • c0a793784b Sort key mappings and node positions by key Dennis Kobert 2026-09-09 15:39:32 +00:00
  • 8281d082f4 Drop redundant conversions, assertions and struct updates Dennis Kobert 2026-09-09 15:39:17 +00:00
  • aa20c2c167 Elide the arena lifetimes that the signatures do not need Dennis Kobert 2026-09-09 15:39:12 +00:00
  • 92bca96171 Name the crate cluster tuple as a type alias Dennis Kobert 2026-09-09 15:39:12 +00:00
  • 4f9402dad6 Explain why the selective color and spline loops index by range Dennis Kobert 2026-09-09 15:39:12 +00:00
  • 52301d68aa Collapse nested conditionals into let-chains and match guards Dennis Kobert 2026-09-09 15:31:36 +00:00
  • f27d90d152 Fold attribute names through monitors and skip coercing name inputs Dennis Kobert 2026-09-13 17:58:53 +02:00
  • 53608ae7bf Row a reading input's element generic instead of erasing it Dennis Kobert 2026-09-13 23:33:37 +02:00
  • 93d9b595ef Name a type's live spelling beside its static one Dennis Kobert 2026-09-14 12:09:37 +02:00
  • 9656f80e42 Use cargo workspace to remove dublicated version, license and author fields use-more-cargo-workspace Timon 2026-06-11 15:03:57 +00:00
  • cad24960e3 Implement node input compression test tool compression-experiments Dennis Kobert 2026-09-13 15:25:50 +02:00
  • ecd2007e63 Remove the 'Threshold' node's "Luminance Calculation" parameter (#4528) Keavon Chambers 2026-09-13 03:02:27 -07:00
  • fea741cdef New node: Color Balance (#4527) Keavon Chambers 2026-09-12 22:11:51 -07:00
  • 98550f6f25 Fix defaulted Item parameters dropping their type alias and rejecting hex string color defaults (#4525) Keavon Chambers 2026-09-12 19:32:51 -07:00
  • 89b797f4c1 Make 'Gradient Map' use gamma-space luma and move it into adjustments.rs (#4524) Keavon Chambers 2026-09-12 18:24:38 -07:00
  • 21cceeb7ba Rename the 'Hex to Color' node to 'String to Color' (#4523) Keavon Chambers 2026-09-12 16:52:32 -07:00
  • 96024d6c2c New node: String to Vec2 (#4522) Keavon Chambers 2026-09-12 16:40:48 -07:00
  • 645d346565 Ease the Smooth gradient interpolation into the ends of an open ramp (#4521) Keavon Chambers 2026-09-12 16:26:03 -07:00
  • 3e51b757db Add the Curves adjustment node with a Transfer Curve type and editor widget (#4520) Keavon Chambers 2026-09-12 12:58:55 -07:00