Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 13535852 authored by Mohammed Althaf T's avatar Mohammed Althaf T 😊
Browse files

Remove trigger on new accounts

parent 752975d5
Loading
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -235,7 +235,7 @@ class AccountSettingsModel @AssistedInject constructor(

    fun updateCredentials(credentials: Credentials) = CoroutineScope(defaultDispatcher).launch {
        accountSettings.credentials(credentials)
        AccountHelper.notifyMailAccountAdded(context)
        AccountHelper.notifyEApps(context, account.name)
        reload()
    }

+4 −18
Original line number Diff line number Diff line
@@ -26,7 +26,6 @@ import at.bitfire.davdroid.settings.AccountSettings
import foundation.e.accountmanager.AccountTypes
import foundation.e.accountmanager.pref.AuthStatePrefUtils
import foundation.e.accountmanager.ui.setup.MurenaLogoutActivity
import foundation.e.accountmanager.utils.AccountHelper
import foundation.e.accountmanager.utils.SystemUtils.sendWithBackgroundLaunchAllowed
import java.util.logging.Level
import java.util.logging.Logger
@@ -37,23 +36,10 @@ class AccountReceiver : BroadcastReceiver() {
    override fun onReceive(context: Context?, intent: Intent?) {
        if (context == null || intent == null) return

        when (intent.action) {
            AccountManager.LOGIN_ACCOUNTS_CHANGED_ACTION -> handleAccountChange(context)
            AccountManager.ACTION_ACCOUNT_REMOVED -> handleAccountRemoval(context, intent)
            else -> logger.log(Level.WARNING, "Unhandled action: ${intent.action}")
        }
    }

    private fun handleAccountChange(context: Context) {
        val accountManager = AccountManager.get(context)
        val murenaAccounts = AccountHelper.getAllAccounts(accountManager)
            .filter { it.type == AccountTypes.Murena.accountType }

        murenaAccounts.forEach { account ->
            logger.log(Level.INFO, "Account change detected for ${account.name}")
            val authState = accountManager.getUserData(account, AccountSettings.KEY_AUTH_STATE)
            AuthStatePrefUtils.saveAuthState(context, account, authState)
            AccountHelper.notifyEApps(context, account.name)
        if (intent.action == AccountManager.ACTION_ACCOUNT_REMOVED) {
            handleAccountRemoval(context, intent)
        } else {
            logger.log(Level.WARNING, "Unhandled action: ${intent.action}")
        }
    }

+0 −1
Original line number Diff line number Diff line
@@ -59,7 +59,6 @@
                android:exported="true">
            <intent-filter>
                <action android:name="android.accounts.action.ACCOUNT_REMOVED"/>
                <action android:name="android.accounts.LOGIN_ACCOUNTS_CHANGED" />
            </intent-filter>
        </receiver>