mirror of
https://github.com/twonlyapp/twonly-app.git
synced 2026-01-15 11:18:41 +00:00
fix non updating timer
This commit is contained in:
parent
8ee1f85a58
commit
7a8e14c3be
1 changed files with 29 additions and 4 deletions
|
|
@ -1,3 +1,5 @@
|
|||
import 'dart:async';
|
||||
|
||||
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:twonly/src/components/flame.dart';
|
||||
|
|
@ -155,13 +157,35 @@ class _UserListItem extends State<UserListItem> {
|
|||
bool isDownloading = false;
|
||||
List<int> token = [];
|
||||
|
||||
Timer? updateTime;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
if (widget.lastMessage != null) {
|
||||
void initState() {
|
||||
super.initState();
|
||||
lastUpdateTime();
|
||||
}
|
||||
|
||||
void lastUpdateTime() {
|
||||
// Change the color every 200 milliseconds
|
||||
updateTime = Timer.periodic(Duration(milliseconds: 200), (timer) {
|
||||
setState(() {
|
||||
lastMessageInSeconds =
|
||||
calculateTimeDifference(DateTime.now(), widget.lastMessage!.sendAt)
|
||||
.inSeconds;
|
||||
setState(() {});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
updateTime?.cancel();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
if (widget.lastMessage != null) {
|
||||
state = widget.lastMessage!.getSendState();
|
||||
|
||||
final content = widget.lastMessage!.messageContent;
|
||||
|
|
@ -175,6 +199,7 @@ class _UserListItem extends State<UserListItem> {
|
|||
.contains(token.toString());
|
||||
}
|
||||
}
|
||||
|
||||
int flameCounter = context
|
||||
.watch<MessagesChangeProvider>()
|
||||
.flamesCounter[widget.user.userId.toInt()] ??
|
||||
|
|
|
|||
Loading…
Reference in a new issue