Commit Graph

1536 Commits

Author SHA1 Message Date
Chenlei Hu
c4373deeea [Test] Add test on moving output links (#887)
Ref: https://github.com/Comfy-Org/litegraph.js/issues/881

Verifies that moving output links does not cause link corruption.
2025-04-04 14:57:19 -04:00
Chenlei Hu
29c923e0e3 [Bug] Fix slot link state corruption on moving link between sockets (#882)
Ref: https://github.com/Comfy-Org/litegraph.js/issues/881

This PR fixes the corrupted link state when moving link from one input
socket to another.
2025-04-04 14:28:41 -04:00
Chenlei Hu
d17b86a6b8 [Test] Validate slot links after each test (#886)
Disable `"Should move input links"` test case as it fails validation.

Ref: https://github.com/Comfy-Org/litegraph.js/issues/881
2025-04-04 14:22:02 -04:00
Comfy Org PR Bot
f63cf8648e 0.11.9 (#880)
Patch version increment to 0.11.9

Co-authored-by: huchenlei <20929282+huchenlei@users.noreply.github.com>
2025-04-03 11:24:57 -04:00
Chenlei Hu
8a94232f61 [nit] Remove IDrawOptions.showText (#879)
`showText` is essentially an alias of `!lowQuality`. Removing it from
the interface.
2025-04-03 11:24:51 -04:00
filtered
05b0918915 Support dragging reroutes from floating links (#878)
Allows dragging reroutes from floating links.
2025-04-03 12:08:28 +00:00
Comfy Org PR Bot
a4e1b39823 0.11.8 (#877)
Patch version increment to 0.11.8

Co-authored-by: huchenlei <20929282+huchenlei@users.noreply.github.com>
2025-04-01 14:56:51 -04:00
Chenlei Hu
184ba3915a [TS] Properly type slot widget (#876)
INodeSlot.widget is not real widget references at runtime. This PR
narrows the type so that we don't run into unexpected issues.
2025-04-01 14:54:14 -04:00
Comfy Org PR Bot
125ca24d13 0.11.7 (#873)
Patch version increment to 0.11.7

Co-authored-by: huchenlei <20929282+huchenlei@users.noreply.github.com>
2025-03-30 17:49:32 -04:00
Chenlei Hu
df279024c4 Upstream render of slot error (#872)
Upstream slot error rendering from ComfyUI_frontend.


![image](https://github.com/user-attachments/assets/d14b49a1-7943-4249-a20a-8b3d33df8ddb)
2025-03-30 17:40:44 -04:00
Chenlei Hu
30a7f19a64 Upstream progressbar rendering (#871)
Upstreams progress bar rendering from ComfyUI_frontend.
2025-03-30 17:14:09 -04:00
Comfy Org PR Bot
8a9b1c7071 0.11.6 (#870)
Patch version increment to 0.11.6

Co-authored-by: huchenlei <20929282+huchenlei@users.noreply.github.com>
2025-03-30 11:51:29 -04:00
Chenlei Hu
0eeaf90647 [nit] Rename IDrawBoundingOptions args (#869) 2025-03-30 11:46:45 -04:00
Chenlei Hu
854ac4350f Add LGraphNode.strokeStyles API (#868)
This should allow frontend drop the stroke logic in hijack of
`drawNodeShape`. Example usage:

```ts
node.strokeStyles["executionError"] = (this: LGraphNode) => 
  app.lastNodeErrors?.[this.id] ? { colour: 'red', thickness: 2 } : undefined
```
2025-03-30 11:29:37 -04:00
Chenlei Hu
27a2b785ac [Cleanup] Remove use_legacy_node_error_indicator (#867)
The fallback option was added in
https://github.com/Comfy-Org/litegraph.js/pull/358. So far no code is
using this legacy fallback option. Removing it now.
2025-03-30 10:30:39 -04:00
Comfy Org PR Bot
ba5809a9b4 0.11.5 (#865)
Patch version increment to 0.11.5

Co-authored-by: webfiltered <176114999+webfiltered@users.noreply.github.com>
2025-03-28 09:04:53 +11:00
filtered
7b3ea64714 Fix 862 (#864)
- Follow-up on #862
- Corrects issues with floating reroute switch logic
- Updates test expectations
2025-03-28 09:00:58 +11:00
Comfy Org PR Bot
59317bcda7 0.11.4 (#863)
Patch version increment to 0.11.4

Co-authored-by: webfiltered <176114999+webfiltered@users.noreply.github.com>
2025-03-28 05:21:29 +11:00
filtered
a20bae064f Allow floating reroute switches (#862)
- Resolves https://github.com/Comfy-Org/ComfyUI_frontend/issues/3247

Bypasses the logic that automatically removed reroutes that had no
remaining links. Reroutes are now always converted to floating whenever
reroutes are reconnected.
2025-03-27 18:18:22 +00:00
Comfy Org PR Bot
332b18bd91 0.11.3 (#861)
Patch version increment to 0.11.3

Co-authored-by: huchenlei <20929282+huchenlei@users.noreply.github.com>
2025-03-26 15:09:27 -04:00
Chenlei Hu
a6aec4017b [Bug] Fix link drop on widget (#860)
Resolves https://github.com/Comfy-Org/litegraph.js/issues/857
2025-03-26 15:08:04 -04:00
Chenlei Hu
6fd6c60b9f [Bug] Fix drag link from input to output (#859)
Resolves https://github.com/Comfy-Org/litegraph.js/issues/858
2025-03-26 14:53:30 -04:00
Chenlei Hu
808d78169b Early return in LGraphCanvas.deselectAll (#856)
Avoid trigger `onSelectionChange` when nothing is selected.
2025-03-25 10:22:40 -04:00
Comfy Org PR Bot
27895dac00 0.11.2 (#852)
Patch version increment to 0.11.2

Co-authored-by: huchenlei <20929282+huchenlei@users.noreply.github.com>
2025-03-24 15:46:40 -04:00
Chenlei Hu
c5db2d8736 [Bug] Fix number widget range not enforced (#850)
Resolves https://github.com/Comfy-Org/ComfyUI_frontend/issues/3204
2025-03-24 15:37:55 -04:00
filtered
123c46d28b [TS] Add placeholder interfaces for subgraph classes (#851) 2025-03-24 19:23:20 +00:00
filtered
5662aa3790 [API] Remove unused: LGraph.getSupportedTypes (#849)
Also removes unused `supported_types` static array.
2025-03-24 07:03:07 +00:00
filtered
f0bd360935 [API] Remove unused callbacks (#848)
- Follow-up on #847
- Removes now-redundant callbacks
2025-03-24 06:58:56 +00:00
filtered
28543d7d9d [API] Remove unused LGraph APIs (#847)
Removes unused, outdated helper methods from the original, incomplete
subgraph impl.
2025-03-24 06:24:28 +00:00
filtered
b1462a6274 [API] Add customisation of reroute bezier controls (#846)
Allows globally setting the bezier control point offset from the reroute
centre point. This can be increased to allow larger curves on longer
links, or set to 0 to completely disable the spline on inter-reroute
link segments.
2025-03-24 06:10:57 +00:00
filtered
642317f6bd Reroute link styles (#845)
Improves linear & straight link styles to work with native reroutes
2025-03-24 13:31:43 +11:00
Comfy Org PR Bot
5a67044206 0.11.1 (#844)
Patch version increment to 0.11.1

Co-authored-by: huchenlei <20929282+huchenlei@users.noreply.github.com>
2025-03-23 20:52:15 -04:00
Chenlei Hu
7fc8f8c897 Add lowQuality param to IWidget.draw (#843)
Currently widget needs to get access to `LGraphCanvas` instance to know
whether the canvas is rendering in low quality (Zoomed out). Usually
canvas object is obtained from `ComfyApp` instance.

This PR passes the lowQuality value to `IWidget.draw` to decouple the
dependency on `LGraphCanvas`.
2025-03-23 20:50:14 -04:00
filtered
c8bd5e43dd Add litegraph input indicator helper class (#842)
Example usage with ComfyUI_frontend, via console / devtools:

```ts
const inputIndicators = new InputIndicators(app.canvas)
// Dispose:
inputIndicators.dispose()
```
2025-03-24 11:43:36 +11:00
Comfy Org PR Bot
361ae2c589 0.11.0 (#840)
Minor version increment to 0.11.0

Co-authored-by: webfiltered <176114999+webfiltered@users.noreply.github.com>
2025-03-24 11:17:29 +11:00
filtered
fd4ffbc1f8 Fix render issues after moving floating input links (#841)
- Fixes floating inputs have invisible segment after moving
- Fixes floating input can be moved onto existing input link, resulting
in the slot having two links
2025-03-24 00:16:06 +00:00
filtered
7b8f01f546 [Refactor] Split moving links (#839)
Splits moving links out to separate input and output classes.
2025-03-23 22:11:08 +00:00
filtered
05587d8a19 Fix moving existing links can result in loopback (#838)
Prevents nodes connecting links to themselves when moving existing
links.

If moving multiple links with reroutes, this will instead _reconnect_
any links that would become loopbacks, only without any rereoutes.
2025-03-23 19:00:55 +00:00
filtered
ff6281c840 Fix cannot shift-drag new link from first link segment (#836)
Fixes issue where new links can only be shift-click dragged from the
link line on link segments *after* a native reroute.
2025-03-23 15:13:06 +00:00
filtered
642e73773c [CodeHealth] Improve legibility of renderingBoxColor (#832)
Drastically reduces the cognitive complexity of
`LGraphNode.renderingBoxColor` by impl. early returns.
2025-03-22 21:53:42 +00:00
filtered
a44b8d0581 Fix bypass links on delete gives up after corrupt link (#831)
Bypass links will now continue to attempt to connect other links,
instead of silently giving up on the first corrupt link it finds.
2025-03-22 21:50:18 +00:00
filtered
ba7f870e0f [CodeHealth] Improve code readability (#830) 2025-03-22 21:48:26 +00:00
Comfy Org PR Bot
d3685bc6df 0.11.0-2 (#829)
Prerelease version increment to 0.11.0-2

Co-authored-by: webfiltered <176114999+webfiltered@users.noreply.github.com>
2025-03-23 07:44:47 +11:00
filtered
b254bae5c5 Allow floating reroutes to be chained when creating new (#828)
- Resolves #827
2025-03-23 07:38:11 +11:00
filtered
2e95ac9a71 Fix minor render issues with links / reroutes (#825)
- Fixes link centre marker highlight drawn over dragged items
- Fixes arrow-style link centre marker drawn twice
- Adds missing centre markers for output floating links
- Adds render sort order for reroutes (more links rendered on top)
2025-03-23 06:36:14 +11:00
filtered
16eddaac5f Render floating links as faded out (#826)
- Resolves #806
- Renders floating links with a faded-out effect
2025-03-23 06:35:58 +11:00
filtered
5f03d9a3cf Revert "Implement _.pick to simplify serialization (#763)" (#823)
Reason: Performance

- 40x slower slot serialisation using randomised data
- Overall 2-3x slower `graph.serialize()` on a 600 node graph

This reverts commit 77465113cd.
2025-03-23 03:39:15 +11:00
Comfy Org PR Bot
37ab504bdc 0.11.0-1 (#824)
Prerelease version increment to 0.11.0-1

Co-authored-by: webfiltered <176114999+webfiltered@users.noreply.github.com>
2025-03-23 03:31:34 +11:00
filtered
0dd060a369 [API] Require always-exported node properties be defined (#821)
Now required:

- `type`
- `pos`
- `size`
- `flags`
- `order`
- `mode`
2025-03-23 03:25:57 +11:00
filtered
6380037d1f [API] Add subgraph schema export types (serialisation) (#822)
Adds export / serialisation interfaces to support subgraph impl.
2025-03-22 15:59:01 +00:00