From e340fc53c86b686557a4593a52a0ba4cc540b3d4 Mon Sep 17 00:00:00 2001 From: dev-12 Date: Wed, 24 Sep 2025 13:10:51 +0530 Subject: [PATCH] bugfix! ensure mail account is properly removed The system broadcast for account removal wasn't being received when the app was in a stopped state, leading to stale account information. Use the custom broadcast from the account manager app, ensuring the mail account is properly removed regardless of the app's state. --- app/k9mail/src/main/AndroidManifest.xml | 10 +++++++--- .../java/com/fsck/k9/account/AccountSyncReceiver.kt | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app/k9mail/src/main/AndroidManifest.xml b/app/k9mail/src/main/AndroidManifest.xml index c2e1f5acfd..55baaa04b2 100644 --- a/app/k9mail/src/main/AndroidManifest.xml +++ b/app/k9mail/src/main/AndroidManifest.xml @@ -25,6 +25,8 @@ + + - + android:permission="foundation.e.accountmanager.permission.ACCOUNT_EVENTS"> - + diff --git a/app/ui/legacy/src/main/java/com/fsck/k9/account/AccountSyncReceiver.kt b/app/ui/legacy/src/main/java/com/fsck/k9/account/AccountSyncReceiver.kt index 25f016024c..7a9d78a898 100644 --- a/app/ui/legacy/src/main/java/com/fsck/k9/account/AccountSyncReceiver.kt +++ b/app/ui/legacy/src/main/java/com/fsck/k9/account/AccountSyncReceiver.kt @@ -37,7 +37,7 @@ class AccountSyncReceiver : BroadcastReceiver(), KoinComponent { private const val ACTION_PREFIX = "foundation.e.accountmanager.account" private const val ACCOUNT_CREATION_ACTION = "$ACTION_PREFIX.create" - private const val ACCOUNT_REMOVAL_ACTION = "android.accounts.action.ACCOUNT_REMOVED" + private const val ACCOUNT_REMOVAL_ACTION = "$ACTION_PREFIX.removed" } -- GitLab