From c5f29ee1989a4d5ae993abe36d5cec3e907763a6 Mon Sep 17 00:00:00 2001 From: Ahmad-tanbits Date: Tue, 9 Sep 2025 12:51:33 +0500 Subject: [PATCH] feat: add suggestionListWidth option --- example/lib/main.dart | 2 +- lib/src/mention_view.dart | 4 ++++ lib/src/option_list.dart | 4 ++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/example/lib/main.dart b/example/lib/main.dart index 0c0636d..dca690b 100644 --- a/example/lib/main.dart +++ b/example/lib/main.dart @@ -41,7 +41,7 @@ class _MyHomePageState extends State { body: Column( mainAxisAlignment: MainAxisAlignment.end, children: [ - RaisedButton( + TextButton( child: Text('Get Text'), onPressed: () { print(key.currentState!.controller!.markupText); diff --git a/lib/src/mention_view.dart b/lib/src/mention_view.dart index ec8be89..753d83e 100644 --- a/lib/src/mention_view.dart +++ b/lib/src/mention_view.dart @@ -7,6 +7,7 @@ class FlutterMentions extends StatefulWidget { this.defaultText, this.suggestionPosition = SuggestionPosition.Bottom, this.suggestionListHeight = 300.0, + this.suggestionListWidth, this.onMarkupChanged, this.onMentionAdd, this.onSearchChanged, @@ -84,6 +85,8 @@ class FlutterMentions extends StatefulWidget { /// Defaults to `300.0` final double suggestionListHeight; + final double? suggestionListWidth; + /// A Functioned which is triggered when ever the input changes /// but with the markup of the selected mentions /// @@ -425,6 +428,7 @@ class FlutterMentionsState extends State { return show && !widget.hideSuggestionList ? OptionList( suggestionListHeight: widget.suggestionListHeight, + suggestionListWidth: widget.suggestionListWidth, suggestionBuilder: list.suggestionBuilder, suggestionListDecoration: widget.suggestionListDecoration, data: list.data.where((element) { diff --git a/lib/src/option_list.dart b/lib/src/option_list.dart index 5c1439a..df79268 100644 --- a/lib/src/option_list.dart +++ b/lib/src/option_list.dart @@ -5,6 +5,7 @@ class OptionList extends StatelessWidget { required this.data, required this.onTap, required this.suggestionListHeight, + this.suggestionListWidth, this.suggestionBuilder, this.suggestionListDecoration, }); @@ -17,12 +18,15 @@ class OptionList extends StatelessWidget { final double suggestionListHeight; + final double? suggestionListWidth; + final BoxDecoration? suggestionListDecoration; @override Widget build(BuildContext context) { return data.isNotEmpty ? Container( + width: suggestionListWidth, decoration: suggestionListDecoration ?? BoxDecoration(color: Colors.white), constraints: BoxConstraints(