From b13a644167b43246c1e95e24ad7603dfbcff50ea Mon Sep 17 00:00:00 2001 From: Michael Bevin Date: Thu, 7 Apr 2022 03:03:11 +0100 Subject: [PATCH] Add support for setting onLongPress handler for MultiSelectContainer --- .../lib/src/containers/multi_select_container.dart | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/flutter_multi_select/lib/src/containers/multi_select_container.dart b/flutter_multi_select/lib/src/containers/multi_select_container.dart index e96d825..22b8fd0 100644 --- a/flutter_multi_select/lib/src/containers/multi_select_container.dart +++ b/flutter_multi_select/lib/src/containers/multi_select_container.dart @@ -34,6 +34,7 @@ class MultiSelectContainer extends StatefulWidget { this.splashColor, this.highlightColor, this.controller, this.singleSelectedItem = false, + this.onLongPress, }) : super(key: key); /// [MultiSelectCard] List for the multi select container. @@ -93,6 +94,9 @@ class MultiSelectContainer extends StatefulWidget { /// Call when item is selected. final void Function(List selectedItems, T selectedItem) onChange; + /// Call when item is long-pressed. + final void Function(T item)? onLongPress; + @override _SimpleMultiSelectContainerState createState() => _SimpleMultiSelectContainerState(); @@ -318,6 +322,14 @@ class _SimpleMultiSelectContainerState child: InkWell( splashColor: item.splashColor ?? widget.splashColor, highlightColor: item.highlightColor ?? widget.highlightColor, + onLongPress: (item.enabled == false) + ? null + : () { + var fn = widget.onLongPress; + if (fn != null) { + fn(item.value); + } + }, onTap: item.enabled == false ? null : () {