From 0ea1b346f23f70432348dedea5e5a0f31c45ac3f Mon Sep 17 00:00:00 2001 From: JaviMetalCBA <73643585+JaviMetalCBA@users.noreply.github.com> Date: Thu, 29 Oct 2020 13:32:24 +0100 Subject: [PATCH] Fix button enabled despite disableColor Fixed control buttons making jump-loops despite showing disableColor. My implementation conditions the onTap response to the button color or loop being enabled. --- lib/src/swiper_control.dart | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/src/swiper_control.dart b/lib/src/swiper_control.dart index 158b460..039e984 100644 --- a/lib/src/swiper_control.dart +++ b/lib/src/swiper_control.dart @@ -36,10 +36,13 @@ class SwiperControl extends SwiperPlugin { return new GestureDetector( behavior: HitTestBehavior.opaque, onTap: () { + ///condition onTap animation to loop status or presence of previous or next index (avoiding jump-loop). + bool isPrev = config.activeIndex > 0; + bool isNext = config.activeIndex < config.itemCount - 1; if (previous) { - config.controller.previous(animation: true); + if (isPrev || config.loop) config.controller.previous(animation: true); } else { - config.controller.next(animation: true); + if (isNext || config.loop) config.controller.next(animation: true); } }, child: Padding(