From fdfc2e37cc3cd0e7fd5db6eb0f12626463894b3f Mon Sep 17 00:00:00 2001 From: Harry Caballeros Date: Fri, 31 Jul 2020 11:01:05 -0600 Subject: [PATCH] Detect Focus with FocusNode --- lib/flappy_search_bar.dart | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/lib/flappy_search_bar.dart b/lib/flappy_search_bar.dart index 691742f..9c23d0e 100644 --- a/lib/flappy_search_bar.dart +++ b/lib/flappy_search_bar.dart @@ -31,7 +31,8 @@ class SearchBarController { CancelableOperation _cancelableOperation; int minimumChars; - void setTextController(TextEditingController _searchQueryController, minimunChars) { + void setTextController( + TextEditingController _searchQueryController, minimunChars) { this._searchQueryController = _searchQueryController; this.minimumChars = minimunChars; } @@ -215,6 +216,9 @@ class SearchBar extends StatefulWidget { /// Set a padding on the list final EdgeInsetsGeometry listPadding; + /// Detect focus on widget + final FocusNode focus; + SearchBar({ Key key, @required this.onSearch, @@ -246,6 +250,7 @@ class SearchBar extends StatefulWidget { this.listPadding = const EdgeInsets.all(0), this.searchBarPadding = const EdgeInsets.all(0), this.headerPadding = const EdgeInsets.all(0), + this.focus, }) : super(key: key); @override @@ -268,7 +273,8 @@ class _SearchBarState extends State> searchBarController = widget.searchBarController ?? SearchBarController(); searchBarController.setListener(this); - searchBarController.setTextController(_searchQueryController, widget.minimumChars); + searchBarController.setTextController( + _searchQueryController, widget.minimumChars); } @override @@ -396,6 +402,7 @@ class _SearchBarState extends State> padding: widget.searchBarStyle.padding, child: Theme( child: TextField( + focusNode: widget.focus, controller: _searchQueryController, onChanged: _onTextChanged, style: widget.textStyle,