diff --git a/lib/pages/common/common_slide_page.dart b/lib/pages/common/common_slide_page.dart index 061064cd..cd440531 100644 --- a/lib/pages/common/common_slide_page.dart +++ b/lib/pages/common/common_slide_page.dart @@ -1,3 +1,5 @@ +import 'dart:math'; + import 'package:PiliPlus/utils/storage.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; @@ -58,7 +60,7 @@ abstract class CommonSlidePageState extends State void onDismiss() { if (isSliding == true) { - if (_animController!.value * maxWidth >= 100) { + if (_animController!.value * maxWidth + downPos!.dx >= 100) { Get.back(); } else { _animController!.reverse(); @@ -82,11 +84,11 @@ abstract class CommonSlidePageState extends State } } } else if (isSliding == true) { - if (localPosition.dx < downPos!.dx) { + if (localPosition.dx < 0) { return; } _animController!.value = - (localPosition.dx - downPos!.dx) / maxWidth; + max(0, (localPosition.dx - downPos!.dx)) / maxWidth; } }