onPointerUp method
指针抬起处理
Implementation
@mustCallSuper
@override
bool? onPointerUp(PointerUpEvent e) {
super.onPointerUp(e);
if (pointType == kPrimaryButton) {
onTapUp(e); // 响应指针抬起事件
if (isCancel == true) return false;
_tripleTapHandler(e); // 处理三击事件
_doubleTapHandler(e); // 处理双击事件
if (delayTapForDouble &&
(doubleTapTimer != null || isActiveDoubleTap == true)) {
return false;
}
if (isActiveLongPress != null) false;
onTap(e); // 响应点击事件
} else if (pointType == kSecondaryButton) {
if (enabledSecondaryTap) {
ElPointerManager.isOpen = true;
// 重置 web 原生右键事件
if (kIsWeb) {
preventContextMenuTimer ??= setTimeout(() {
BrowserContextMenu.enableContextMenu();
preventContextMenuTimer = null;
}, 100);
}
onSecondaryTapUp(e);
}
} else if (pointType == kTertiaryButton) {
if (enabledTertiaryTap) {
ElPointerManager.isOpen = true;
onTertiaryTapUp(e);
}
} else if (pointType == kForwardMouseButton) {
if (enabledForwardTap) {
ElPointerManager.isOpen = true;
onForwardTapUp(e);
}
} else if (pointType == kBackMouseButton) {
if (enabledBackTap) {
ElPointerManager.isOpen = true;
onBackTapUp(e);
}
}
return true;
}