1
0
mirror of https://gitlab.com/comunic/comunicmobile synced 2025-06-19 08:15:16 +00:00

Automatically change the number of unread conversations

This commit is contained in:
2020-04-18 14:33:07 +02:00
parent a8c358fd58
commit 526f698bf4
4 changed files with 30 additions and 8 deletions

View File

@ -1,5 +1,6 @@
import 'package:comunic/enums/load_error_level.dart';
import 'package:comunic/helpers/conversations_helper.dart';
import 'package:comunic/helpers/events_helper.dart';
import 'package:comunic/helpers/users_helper.dart';
import 'package:comunic/lists/conversations_list.dart';
import 'package:comunic/models/conversation.dart';
@ -7,6 +8,7 @@ import 'package:comunic/ui/routes/main_route.dart';
import 'package:comunic/ui/routes/update_conversation_route.dart';
import 'package:comunic/ui/screens/create_conversation_screen.dart';
import 'package:comunic/ui/tiles/conversation_tile.dart';
import 'package:comunic/ui/widgets/safe_state.dart';
import 'package:comunic/utils/intl_utils.dart';
import 'package:comunic/utils/ui_utils.dart';
import 'package:flutter/material.dart';
@ -20,7 +22,7 @@ class ConversationsListScreen extends StatefulWidget {
State<StatefulWidget> createState() => _ConversationScreenState();
}
class _ConversationScreenState extends State<ConversationsListScreen> {
class _ConversationScreenState extends SafeState<ConversationsListScreen> {
final ConversationsHelper _conversationsHelper = ConversationsHelper();
final UsersHelper _usersHelper = UsersHelper();
ConversationsList _list;
@ -29,14 +31,17 @@ class _ConversationScreenState extends State<ConversationsListScreen> {
GlobalKey<RefreshIndicatorState>();
@override
void didChangeDependencies() {
super.didChangeDependencies();
_loadConversations();
void initState() {
super.initState();
this.listen<NewNumberUnreadConversations>(
(d) => _refreshIndicatorKey.currentState.show());
}
@override
void setState(fn) {
if (mounted) super.setState(fn);
void didChangeDependencies() {
super.didChangeDependencies();
_loadConversations();
}
void setError(LoadErrorLevel err) => setState(() => _error = err);