Committed by
GitHub
Merge pull request #1005 from eduardoflorence/bug-snackbar-double-tap
Snackbar run Get.back multiple times if you tap to dismiss multiple times
Showing
1 changed file
with
7 additions
and
1 deletions
| @@ -50,6 +50,7 @@ class SnackRoute<T> extends OverlayRoute<T> { | @@ -50,6 +50,7 @@ class SnackRoute<T> extends OverlayRoute<T> { | ||
| 50 | Alignment _initialAlignment; | 50 | Alignment _initialAlignment; |
| 51 | Alignment _endAlignment; | 51 | Alignment _endAlignment; |
| 52 | bool _wasDismissedBySwipe = false; | 52 | bool _wasDismissedBySwipe = false; |
| 53 | + bool _onTappedDismiss = false; | ||
| 53 | 54 | ||
| 54 | Timer _timer; | 55 | Timer _timer; |
| 55 | 56 | ||
| @@ -62,7 +63,12 @@ class SnackRoute<T> extends OverlayRoute<T> { | @@ -62,7 +63,12 @@ class SnackRoute<T> extends OverlayRoute<T> { | ||
| 62 | OverlayEntry( | 63 | OverlayEntry( |
| 63 | builder: (context) { | 64 | builder: (context) { |
| 64 | return GestureDetector( | 65 | return GestureDetector( |
| 65 | - onTap: snack.isDismissible ? Get.back : null, | 66 | + onTap: () { |
| 67 | + if (snack.isDismissible && !_onTappedDismiss) { | ||
| 68 | + _onTappedDismiss = true; | ||
| 69 | + Get.back(); | ||
| 70 | + } | ||
| 71 | + }, | ||
| 66 | child: AnimatedBuilder( | 72 | child: AnimatedBuilder( |
| 67 | animation: _filterBlurAnimation, | 73 | animation: _filterBlurAnimation, |
| 68 | builder: (context, child) { | 74 | builder: (context, child) { |
-
Please register or login to post a comment