diff --git a/lib/src/widgets/debug_tree_view.dart b/lib/src/widgets/debug_tree_view.dart index fabdd94..7fe637b 100644 --- a/lib/src/widgets/debug_tree_view.dart +++ b/lib/src/widgets/debug_tree_view.dart @@ -16,6 +16,7 @@ class DebugTreeView extends StatelessWidget { required this.nodeBuilder, this.listPadding, this.listGradientColor, + this.scrollController, }) : nodes = copyTreeNodes(nodes); /// List of root level tree nodes. @@ -34,6 +35,9 @@ class DebugTreeView extends StatelessWidget { /// Color for the gradient background of the list view. final Color? listGradientColor; + /// Scroll controller for the list view. + final ScrollController? scrollController; + @override Widget build(BuildContext context) { final flattenedTreeNode = FlattenTreeNode.getFlattenedTree( @@ -41,6 +45,7 @@ class DebugTreeView extends StatelessWidget { treeController, ); return FlutterFlowGradientScrollView( + scrollController: scrollController, gradientHeight: 100, gradientColor: listGradientColor, child: (controller) => ListView.builder( diff --git a/lib/src/widgets/flutterflow_gradient_scroll_view.dart b/lib/src/widgets/flutterflow_gradient_scroll_view.dart index bc6c6ff..85e142f 100644 --- a/lib/src/widgets/flutterflow_gradient_scroll_view.dart +++ b/lib/src/widgets/flutterflow_gradient_scroll_view.dart @@ -14,11 +14,14 @@ class FlutterFlowGradientScrollView extends StatefulWidget { /// it will use the panel color. /// /// * [gradientHeight] parameter is the height of the gradient. Default is 50.0. + /// + /// * [scrollController] parameter is the scroll controller for the scroll view. const FlutterFlowGradientScrollView({ super.key, required this.child, this.gradientColor, this.gradientHeight = 50.0, + this.scrollController, }); /// The child widget that will be scrolled. @@ -30,6 +33,9 @@ class FlutterFlowGradientScrollView extends StatefulWidget { /// The height of the gradient. Default is 50.0. final double gradientHeight; + /// The scroll controller for the scroll view. + final ScrollController? scrollController; + @override State createState() => _FlutterFlowGradientScrollViewState(); @@ -40,7 +46,14 @@ class _FlutterFlowGradientScrollViewState var _showStartGradient = false; var _showEndGradient = false; double? _maxScrollExtent; - final _scrollController = ScrollController(); + + late final ScrollController _scrollController; + + @override + void initState() { + super.initState(); + _scrollController = widget.scrollController ?? ScrollController(); + } @override Widget build(BuildContext context) { diff --git a/pubspec.yaml b/pubspec.yaml index 992b234..098eff4 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -16,7 +16,7 @@ publish_to: "none" # Remove this line if you wish to publish to pub.dev # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html # In Windows, build-name is used as the major, minor, and patch parts # of the product and file versions while build-number is used as the build suffix. -version: 0.2.2 +version: 0.2.3 environment: sdk: ">=3.4.3 <4.0.0"