add debounce in searchQuery

This commit is contained in:
xsahil03x
2020-11-20 18:15:59 +05:30
parent 2908cd66c5
commit aa62d9a01d
+13
View File
@@ -10,6 +10,7 @@ import 'package:stream_chat_flutter/stream_chat_flutter.dart';
import 'chips_input_text_field.dart'; import 'chips_input_text_field.dart';
import 'notifications_service.dart'; import 'notifications_service.dart';
import 'neumorphic_button.dart'; import 'neumorphic_button.dart';
import 'dart:async';
void main() async { void main() async {
WidgetsFlutterBinding.ensureInitialized(); WidgetsFlutterBinding.ensureInitialized();
@@ -284,11 +285,17 @@ class _NewChatScreenState extends State<NewChatScreen> {
Channel channel; Channel channel;
Timer _debounce;
void _userNameListener() { void _userNameListener() {
if (_debounce?.isActive ?? false) _debounce.cancel();
_debounce = Timer(const Duration(milliseconds: 500), () {
if (mounted)
setState(() { setState(() {
_userNameQuery = _controller.text; _userNameQuery = _controller.text;
_isSearchActive = _userNameQuery.isNotEmpty; _isSearchActive = _userNameQuery.isNotEmpty;
}); });
});
} }
@override @override
@@ -533,11 +540,17 @@ class _NewGroupChatScreenState extends State<NewGroupChatScreen> {
bool _isSearchActive = false; bool _isSearchActive = false;
Timer _debounce;
void _userNameListener() { void _userNameListener() {
if (_debounce?.isActive ?? false) _debounce.cancel();
_debounce = Timer(const Duration(milliseconds: 500), () {
if (mounted)
setState(() { setState(() {
_userNameQuery = _controller.text; _userNameQuery = _controller.text;
_isSearchActive = _userNameQuery.isNotEmpty; _isSearchActive = _userNameQuery.isNotEmpty;
}); });
});
} }
@override @override