chore: Follow up stories fix ios badge
parent
01b8e15f73
commit
4feb01fc0c
@ -0,0 +1,20 @@
|
|||||||
|
import 'package:flutter_app_badger/flutter_app_badger.dart';
|
||||||
|
import 'package:flutter_local_notifications/flutter_local_notifications.dart';
|
||||||
|
import 'package:matrix/matrix.dart';
|
||||||
|
|
||||||
|
import 'package:fluffychat/utils/platform_infos.dart';
|
||||||
|
|
||||||
|
extension IosBadgeClientExtension on Client {
|
||||||
|
void updateIosBadge() {
|
||||||
|
if (PlatformInfos.isIOS) {
|
||||||
|
// Workaround for iOS not clearing notifications with fcm_shared_isolate
|
||||||
|
if (!rooms.any((r) =>
|
||||||
|
r.membership == Membership.invite ||
|
||||||
|
(r.notificationCount != null && r.notificationCount > 0))) {
|
||||||
|
// ignore: unawaited_futures
|
||||||
|
FlutterLocalNotificationsPlugin().cancelAll();
|
||||||
|
FlutterAppBadger.removeBadge();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue