ClickInfo.from constructor
ClickInfo.from({
- required Element gestureElement,
- required PointerDownEvent event,
- required Element pageElement,
- required PageInfo pageInfo,
Implementation
factory ClickInfo.from({
required Element gestureElement,
required PointerDownEvent event,
required Element pageElement,
required PageInfo pageInfo,
}) {
ClickInfo clickInfo = ClickInfo._(pageInfo);
clickInfo._touchX = event.position.dx.round();
clickInfo._touchY = event.position.dy.round();
XPath xpath = XPath.createBy(element: gestureElement, pageElement: pageElement);
Element element = xpath.targetElement;
clickInfo._elementType = element.widget.runtimeType.toString();
clickInfo._elementWidth = element.size?.width.round() ?? 0;
clickInfo._elementHeight = element.size?.height.round() ?? 0;
clickInfo._elementPath = xpath.toString();
clickInfo._texts = ElementUtil.findTexts(element);
Key? key = element.widget.key;
if (key != null && key is ValueKey) {
clickInfo._elementManualKey = (key).value;
} else {
clickInfo._elementManualKey = key?.toString() ?? md5.convert(utf8.encode('${clickInfo._elementType}${clickInfo._elementPath}')).toString();
}
clickInfo._ignore = clickInfo._checkIgnore(key, clickInfo);
return clickInfo;
}