fix: Cancel notifications for read rooms and clear app badge on iOS

This commit is contained in:
krille-chan 2023-08-06 21:13:37 +02:00
commit 18b270a15c
No known key found for this signature in database
3 changed files with 23 additions and 33 deletions

View file

@ -4,7 +4,6 @@ import 'package:flutter/foundation.dart';
import 'package:desktop_lifecycle/desktop_lifecycle.dart';
import 'package:desktop_notifications/desktop_notifications.dart';
import 'package:flutter_app_badger/flutter_app_badger.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:http/http.dart' as http;
import 'package:matrix/matrix.dart';
@ -33,18 +32,6 @@ extension LocalNotificationsExtension on MatrixState {
}
if (room.notificationCount == 0) return;
// Workaround for app icon badge not updating
if (Platform.isIOS) {
final unreadCount =
client.rooms.where((room) => room.isUnreadOrInvited).length;
if (unreadCount == 0) {
FlutterAppBadger.removeBadge();
} else {
FlutterAppBadger.updateBadgeCount(unreadCount);
}
return;
}
final event = Event.fromJson(eventUpdate.content, room);
final title =
room.getLocalizedDisplayname(MatrixLocals(L10n.of(widget.context)!));