filtered
604a3e651c
Fix TS types - Widgets ( #428 )
...
* Remove downstream types
These optional type definitions were test code and should not have been upstreamed.
* Remove unnecessary workaround
Build workaround TS conversion; no longer relevant.
* Fix TS type - widget size callback
2025-01-20 14:02:37 -05:00
christian-byrne
b1f8afea2f
fix nullish condition
2025-01-04 20:27:42 -05:00
bymyself
06b6da1353
Update src/LGraphCanvas.ts
...
Co-authored-by: filtered <176114999+webfiltered@users.noreply.github.com >
2025-01-04 20:27:42 -05:00
christian-byrne
6c037ca629
Fix dragging behavior in LGraphCanvas to depend on pointer state
2025-01-04 20:27:42 -05:00
filtered
a548a72f66
Fix selection box is always a square
2025-01-03 11:11:11 -05:00
bymyself
bee9c18a31
Enhance context menu scrolling behavior ( #414 )
2025-01-02 14:57:05 -05:00
filtered
c64c81882c
Add workaround for Firefox pointer events ( #412 )
...
* Add workaround for Firefox pointer events
Co-Authored-By: catboxanon <122327233+catboxanon@users.noreply.github.com >
* nit
---------
Co-authored-by: catboxanon <122327233+catboxanon@users.noreply.github.com >
Co-authored-by: huchenlei <huchenlei@proton.me >
2025-01-01 19:34:58 -05:00
Chenlei Hu
edaf2933e1
Track LGraphState.draggingCanvas ( #409 )
...
* Track LGraphState.draggingCanvas
* nit
2024-12-30 00:20:01 -05:00
Chenlei Hu
7d77fceffa
Properly update cursor style on mouse/keyboard events ( #407 )
...
* Properly update cursor style on mouse/keyboard events
* nit
2024-12-30 00:10:26 -05:00
Chenlei Hu
8856983597
Upstream cursor style ( #405 )
2024-12-29 23:39:23 -05:00
filtered
802e734657
Fix deeply nested context menus remain open ( #399 )
...
* nit - Remove redundant workaround
* Fix deeply nested context menus remain open
2024-12-27 13:52:35 -05:00
filtered
0b161c1195
Fix scaled font blurriness in context menus ( #400 )
...
Requires that fonts scale in increments of 0.25.
2024-12-27 13:51:53 -05:00
Chenlei Hu
54d7292d24
Stricter return value check on LGraphCanvas.getExtraMenuOptions ( #401 )
2024-12-27 13:51:31 -05:00
filtered
e6efff040d
Resolve #395 - thick selection rectangle ( #397 )
2024-12-25 21:25:37 -05:00
bymyself
57dd8392db
Don't process hidden links or reroutes ( #396 )
2024-12-25 21:25:15 -05:00
Chenlei Hu
11ce8e0f7b
Fix NODE_DEFAULT_SHAPE ( #389 )
...
* Fix NODE_DEFAULT_SHAPE
* update snapshot
2024-12-23 20:04:32 -05:00
Chenlei Hu
e442732a09
Emit node-double-click event ( #383 )
...
* Emit node-double-click event
* nit
2024-12-19 16:37:29 -08:00
Chenlei Hu
7f0c3b02fb
Fix slider value display when widget.label is present ( #381 )
2024-12-15 12:47:53 -08:00
filtered
6956973be1
Fix reroutes ignore change in radius ( #379 )
2024-12-15 10:55:46 -08:00
filtered
71f8a1decf
Export Reroute class the same as other similar classes ( #378 )
...
* Export Reroute class the same as other similar classes
* Update test expectations
2024-12-15 10:54:50 -08:00
Chenlei Hu
0048b5a0fe
[i18n] Add INodeSlot.localized_name field ( #376 )
...
* [i18n] Add INodeSlot.localized_name field
* nit
2024-12-13 12:01:21 -08:00
filtered
1c1241bdb1
Optimise positionableItems / empty getters ( #373 )
...
* Optimise LGraph.empty() getter
* Optimise positionableItems getters
- No change to internal functionality
- Replaces forced spread of all items on every property access with generator function
- Consumers that require an array can very cleanly spread into one
2024-12-07 00:00:29 -05:00
Chenlei Hu
a9940da05f
Add LGraph.empty ( #371 )
2024-12-06 17:49:50 -05:00
filtered
1238f83728
Prevent distortion of area select rectangle ( #368 )
2024-12-05 11:33:51 -05:00
Chenlei Hu
c69bbdfb10
Export LGraphEventMode ( #369 )
2024-12-05 11:32:08 -05:00
filtered
8cda1ac48a
Add CanvasPointer callback for node widgets ( #363 )
...
* Add CanvasPointer callback for node widgets
* Add API documentation
* nit - Docs
2024-12-01 20:31:48 -05:00
pythongosssss
a0b50dcf15
Fix cloning pinned nodes ( #364 )
2024-12-01 20:31:12 -05:00
filtered
91077aa20b
Redesign invalid node indicator ( #358 )
...
* nit
* Remove unused code
Gradient can (and should) be impl. directly by caching a CanvasGradient.
* nit
* nit - Refactor
* Remove redundant code
* Add line width & colour options to shape stroke
* Rename drawSelectionBounding to strokeShape
* nit - Doc
* Fix rounded corners not scaling with padding
* Optimise node badge draw
* Redesign invalid node visual indication
Customisable boundary indicator now used, replacing red background.
* Update snapshot
---------
Co-authored-by: huchenlei <huchenlei@proton.me >
2024-11-29 16:26:25 -05:00
filtered
2a39b21578
Fix Zoom Centre ( #135 )
2024-11-28 11:54:09 -05:00
filtered
24db9e2572
Add maximum FPS feature ( #356 )
2024-11-28 09:45:59 -05:00
Chenlei Hu
83ba7a8df7
Export ISerialisedGraph for frontend repo DTS ( #354 )
2024-11-27 23:50:16 -05:00
Chenlei Hu
e981fa01a0
Export types for frontend repo DTS ( #353 )
2024-11-27 22:13:59 -05:00
filtered
304e229dc2
Fix custom widget pointerup receives NaN pos ( #351 )
2024-11-27 12:40:39 -05:00
filtered
f6e885f015
Ensure click_time is available to custom widgets ( #349 )
2024-11-26 13:05:47 -05:00
filtered
ffa2a24cb1
Fix slider regression caused by CanvasPointer ( #347 )
2024-11-26 13:05:24 -05:00
filtered
e35748faa4
Fix widget.mouse callback does not receive pointerup events ( #342 )
...
* Provide pointerup events to widget.mouse callback
* Fix regression in widget mouse cb
pointerup events are now sent to mouse() callback regardless of CanvasPointer state.
2024-11-25 11:05:50 -05:00
filtered
a95d8ebc87
Fix invalid callback return value preventing canvas redraw ( #343 )
...
* Fix invalid callback prevents redraw
When widget.mouse() is incorrectly implemented (no return value), it evaluates as falsy and prevents canvas redraw.
Changes default behaviour to ignore the return value when nullish.
* Fix pointermove for custom widget outside nodes
Events are now also sent when the pointer moves outside the bounds of the node.
2024-11-25 10:43:28 -05:00
filtered
696b8b2c63
Fix custom widget mouseover ( #339 )
2024-11-23 17:44:13 -05:00
filtered
2d69a87419
Use device scaling for drag-from-link checks ( #334 )
2024-11-22 10:57:37 -05:00
filtered
a6c3f5c1c7
Fix widget changed callback not called ( #333 )
2024-11-22 10:48:35 -05:00
filtered
ae6422bad1
Fix custom widgets not receiving pointermove events ( #335 )
2024-11-22 10:45:39 -05:00
filtered
75960485d3
Snapsize ( #331 )
...
* Improve group resize UX
Removes the teleport of the group corner to the pointer, on the first move event.
* Select groups when clicking titles
* Add snap to grid for groups
* Apply new group resize UX to nodes
2024-11-21 14:11:38 -05:00
filtered
ee45593558
Move Snap to Grid control to LiteGraphGlobal ( #329 )
...
* Fix snap to grid - now toggled at app level
Was impl. as per workflow.
* Update test expectations
2024-11-21 10:19:00 -05:00
filtered
f79133659f
Clean up JSDoc ( #327 )
...
* Convert comments to JSDoc
* Clean JSdoc
* nit
* Clean up all JSDoc & ESLint warnings
Disables max-len for now
Removes redundant JSDoc tags (empty, same name, wrong name, etc)
2024-11-21 10:11:53 -05:00
filtered
5469bfdd52
Add ESLint, pre-commit hook & format all files ( #319 )
...
* Add ESLint config
* Add ESLint packages
* Add prettier config
* Fix ESLint package version
* Format all files
* Format static assets
* Format project root config
* Add pre-commit code formatting
Formats .css & .js files automatically. If any .ts or .mts files are staged, the entire project is type-checked.
Packages:
- lint-staged
- husky
- prettier
2024-11-20 21:50:58 -05:00
filtered
b4b68c7e75
Fix fast widget conversion ( #323 )
2024-11-20 09:28:33 -05:00
filtered
ecb7fa4f0b
Fix widget not updating on combo click ( #321 )
2024-11-19 18:26:36 -05:00
filtered
31c25b4ea1
Fixes pinned group contents moving ( #316 )
2024-11-18 13:17:24 -05:00
pythongosssss
1bec315427
Adds highlight to advanced widgets ( #317 )
...
* Adds highlight to advanced widgets
* Update snapshot
2024-11-18 13:16:52 -05:00
filtered
c0e8b33716
Snap everything to grid ( #315 )
...
* Implement snap to grid
- Moves positioning logic to LGraph
- Simplifies code
- Adds Pointer API to alt-clone node
- Removes always_round_positions, replaced by always snap to grid (default size is 1 when always snapping)
Fix refator error
* Fix group items snapped without group
* Allow snapping of all items
- Add snapToGrid to Positionable
- Impl. on all types
- Deprecated: alignToGrid is now a wrapper
* Fix test import alias, update expectations
* Prevent desync of before / after change events
Adds ability to perform late binding of finally() during drag start.
* nit - Refactor
* Fix unwanted snap on node/group add
* nit - Doc
* Add shift key state tracking for snap to grid
Private impl., no state API as yet.
* Add snap guides rendering
Nodes, reroutes
* Optimisation - reroute rendering
Fixes exponential redraw
* Add snap guidelines for groups
2024-11-18 10:12:20 -05:00