TDElementPath.createFrom constructor

TDElementPath.createFrom({
  1. required Element element,
  2. required Element pageElement,
})

Implementation

factory TDElementPath.createFrom({
  required Element element,
  required Element pageElement,
}) {
  TDElementPath path = TDElementPath._(element);
  path._element = element;
  bool searchTarget = true;
  element.visitAncestorElements((parent) {
    if (parent.widget is GestureDetector) {
      searchTarget = false;
    }
    if (searchTarget && _TDPathConstants.levelSet.contains(parent.widget.runtimeType)) {
      path._element = parent;
    }
    if (parent == pageElement) {
      return false;
    }
    return true;
  });
  return path;
}