mirror of
https://github.com/krille-chan/fluffychat
synced 2024-10-10 01:03:40 +00:00
20 lines
680 B
Dart
20 lines
680 B
Dart
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 > 0),
|
|
)) {
|
|
// ignore: unawaited_futures
|
|
FlutterLocalNotificationsPlugin().cancelAll();
|
|
FlutterAppBadger.removeBadge();
|
|
}
|
|
}
|
|
}
|
|
}
|