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,