findLowestCommonRowNode method

EquationRowNode findLowestCommonRowNode(
  1. int position1,
  2. int position2
)

Implementation

EquationRowNode findLowestCommonRowNode(int position1, int position2) {
  final redNodes1 = findNodesAtPosition(position1);
  final redNodes2 = findNodesAtPosition(position2);
  for (var index = math.min(redNodes1.length, redNodes2.length) - 1;
      index >= 0;
      index--) {
    final node1 = redNodes1[index].value;
    final node2 = redNodes2[index].value;
    if (node1 == node2 && node1 is EquationRowNode) {
      return node1;
    }
  }
  return greenRoot;
}