Selector: [fDragHandle]
Class: FDragHandleDirective
FDragHandleDirective marks an element as the only valid drag start surface for moving a node.
In Foblex Flow, node dragging is enabled by fDraggable on the parent f-flow, but a drag start area must be defined.
The simplest option is to put fDragHandle on the node itself (the whole node becomes draggable). For more complex nodes, put it on a header or a dedicated grip.
Real nodes often contain interactive UI (buttons, inputs, selects). If the whole node starts dragging from any pixel, you can easily break UX:
fDragHandle lets you choose exactly where dragging can start.
Put fDragHandle on the same element as fNode.
Put fDragHandle on a nested element.
Sometimes you want the whole node draggable, except for a specific area (for example, an input or a toolbar).
For this use case, use fDragBlocker on the inner element(s) that must never start a drag.
.f-component Base class for flow primitives..f-drag-handle Host class added by the directive.fDragHandle works only when fDraggable is enabled on the parent f-flow.fDragHandle to be movable.[component.html] <<< https://raw.githubusercontent.com/Foblex/f-flow/main/projects/f-examples/nodes/drag-handle/drag-handle.html [component.ts] <<< https://raw.githubusercontent.com/Foblex/f-flow/main/projects/f-examples/nodes/drag-handle/drag-handle.ts [component.scss] <<< https://raw.githubusercontent.com/Foblex/f-flow/main/projects/f-examples/nodes/drag-handle/drag-handle.scss [common.scss] <<< https://raw.githubusercontent.com/Foblex/f-flow/main/projects/f-examples/_flow-common.scss