fix android background push

This commit is contained in:
Salvatore Giordano
2020-04-06 11:21:46 +02:00
parent 27c3a7f390
commit fe7219a3c1
3 changed files with 30 additions and 3 deletions
+23 -1
View File
@@ -98,7 +98,8 @@ class ChannelListView extends StatefulWidget {
_ChannelListViewState createState() => _ChannelListViewState();
}
class _ChannelListViewState extends State<ChannelListView> {
class _ChannelListViewState extends State<ChannelListView>
with WidgetsBindingObserver {
final ScrollController _scrollController = ScrollController();
@override
@@ -334,6 +335,8 @@ class _ChannelListViewState extends State<ChannelListView> {
void initState() {
super.initState();
WidgetsBinding.instance.addObserver(this);
final streamChat = StreamChat.of(context);
streamChat.queryChannels(
filter: widget.filter,
@@ -346,4 +349,23 @@ class _ChannelListViewState extends State<ChannelListView> {
_listenChannelPagination(streamChat);
});
}
@override
void didChangeAppLifecycleState(AppLifecycleState state) {
if (state == AppLifecycleState.resumed) {
StreamChat.of(context).queryChannels(
filter: widget.filter,
sortOptions: widget.sort,
paginationParams: widget.pagination,
options: widget.options,
onlyOffline: true,
);
}
}
@override
void dispose() {
WidgetsBinding.instance.removeObserver(this);
super.dispose();
}
}
+2
View File
@@ -198,6 +198,7 @@ class StreamChatState extends State<StreamChat>
List<SortOption> sortOptions,
PaginationParams paginationParams,
Map<String, dynamic> options,
bool onlyOffline = false,
}) async {
if (_queryChannelsLoadingController.value == true) {
return;
@@ -210,6 +211,7 @@ class StreamChatState extends State<StreamChat>
sort: sortOptions,
options: options,
paginationParams: paginationParams,
onlyOffline: onlyOffline,
);
_queryChannelsLoadingController.sink.add(false);
} catch (err, stackTrace) {