mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-02-27 10:14:06 +00:00
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
This commit is contained in:
@@ -68,8 +68,11 @@ export class CanvasPointer {
|
||||
/** The last pointerup event for the primary button */
|
||||
eUp: CanvasPointerEvent | null = null
|
||||
|
||||
/** If set, as soon as the mouse moves outside the click drift threshold, this action is run once. */
|
||||
onDragStart?(): unknown
|
||||
/**
|
||||
* If set, as soon as the mouse moves outside the click drift threshold, this action is run once.
|
||||
* @param pointer This pointer instance. Permits actions such as late binding of the finally() callback.
|
||||
*/
|
||||
onDragStart?(pointer: this): unknown
|
||||
|
||||
/**
|
||||
* Called on pointermove whilst dragging.
|
||||
@@ -232,7 +235,7 @@ export class CanvasPointer {
|
||||
|
||||
#setDragStarted(): void {
|
||||
this.dragStarted = true
|
||||
this.onDragStart?.()
|
||||
this.onDragStart?.(this)
|
||||
delete this.onDragStart
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user