updateDragHighlight method

void updateDragHighlight(
  1. String nodeId,
  2. bool isCommandPressed
)

Update visual feedback during node drag (only during Command+drag)

Implementation

void updateDragHighlight(String nodeId, bool isCommandPressed) {
  if (!isCommandPressed) {
    // Clear highlight if Command is not pressed
    if (_highlightedGroupId.value != null) {
      runInAction(() {
        _highlightedGroupId.value = null;
      });
    }
    return;
  }

  final intersectingGroup = findIntersectingGroup(nodeId);
  final newHighlightId = intersectingGroup?.id;

  if (_highlightedGroupId.value != newHighlightId) {
    runInAction(() {
      _highlightedGroupId.value = newHighlightId;
    });
  }
}