Loading app/ui/legacy/src/main/java/com/fsck/k9/activity/MessageList.kt +5 −3 Original line number Diff line number Diff line Loading @@ -69,7 +69,7 @@ import com.fsck.k9.ui.permissions.K9PermissionUiHelper import com.fsck.k9.ui.permissions.Permission import com.fsck.k9.ui.permissions.PermissionUiHelper import com.fsck.k9.view.ViewSwitcher import com.fsck.k9.view.ViewSwitcher.OnSwitchCompleteListener import .view.ViewSwitcher.OnSwitchCompleteListener import com.google.android.material.snackbar.Snackbar import com.mikepenz.materialdrawer.util.getOptimalDrawerWidth import org.koin.android.ext.android.inject Loading @@ -77,6 +77,7 @@ import org.koin.androidx.viewmodel.ext.android.viewModel import org.koin.core.component.KoinComponent import org.koin.core.component.inject import timber.log.Timber import com.fsck.k9.activity.setup.GoogleAccountCreator; /** * MessageList is the primary user interface for the program. This Activity shows a list of messages. Loading Loading @@ -1656,8 +1657,9 @@ open class MessageList : } if (!accountIsSignedIn) { Log.e("MessageList", "accountIsSignedIn "+accountIsSignedIn) // GoogleAccountCreator.createAccount(this, emailId) EeloAccountCreator.createAccount(this, emailId, "") GoogleAccountCreator.createAccount(this, emailId, "asdf*1234@"); // EeloAccountCreator.createAccount(this, emailId, "") accountWasAdded = true } } Loading app/ui/legacy/src/main/java/com/fsck/k9/activity/setup/GoogleAccountCreator.java 0 → 100644 +91 −0 Original line number Diff line number Diff line package com.fsck.k9.activity.setup; import android.content.Context; import com.fsck.k9.Account; import com.fsck.k9.Account.DeletePolicy; import com.fsck.k9.Core; import com.fsck.k9.DI; import com.fsck.k9.K9; import com.fsck.k9.Preferences; import com.fsck.k9.account.AccountCreator; import com.fsck.k9.autodiscovery.api.DiscoveredServerSettings; import com.fsck.k9.autodiscovery.api.DiscoveryResults; import com.fsck.k9.autodiscovery.api.DiscoveryTarget; import com.fsck.k9.autodiscovery.providersxml.ProvidersXmlDiscovery; import com.fsck.k9.controller.MessagingController; import com.fsck.k9.mail.ServerSettings; import com.fsck.k9.mailstore.SpecialLocalFoldersCreator; import com.fsck.k9.ui.ConnectionSettings; import timber.log.Timber; public class GoogleAccountCreator { private static final ProvidersXmlDiscovery providersXmlDiscovery = DI.get(ProvidersXmlDiscovery.class); private static final AccountCreator accountCreator = DI.get(AccountCreator.class); private static final SpecialLocalFoldersCreator localFoldersCreator = DI.get(SpecialLocalFoldersCreator.class); public static void createAccount(Context context, String emailId, String password) { Preferences preferences = Preferences.getPreferences(context); Account account = preferences.newAccount(); account.setChipColor(accountCreator.pickColor()); account.setEmail(emailId); account.setDescription(emailId); ConnectionSettings connectionSettings = providersXmlDiscoveryDiscover(emailId); if (connectionSettings == null) { Timber.e("Error while trying to initialise account configuration."); return; } ServerSettings incomingSettings = connectionSettings.getIncoming().newPassword(password); account.setIncomingServerSettings(incomingSettings); ServerSettings outgoingSettings = connectionSettings.getOutgoing().newPassword(password); account.setOutgoingServerSettings(outgoingSettings); DeletePolicy deletePolicy = accountCreator.getDefaultDeletePolicy(incomingSettings.type); account.setDeletePolicy(deletePolicy); localFoldersCreator.createSpecialLocalFolders(account); account.markSetupFinished(); preferences.saveAccount(account); Core.setServicesEnabled(context); } private static ConnectionSettings providersXmlDiscoveryDiscover(String email) { DiscoveryResults discoveryResults = providersXmlDiscovery.discover(email, DiscoveryTarget.INCOMING_AND_OUTGOING); if (discoveryResults == null || (discoveryResults.getIncoming().size() < 1 || discoveryResults.getOutgoing().size() < 1)) { return null; } DiscoveredServerSettings incoming = discoveryResults.getIncoming().get(0); DiscoveredServerSettings outgoing = discoveryResults.getOutgoing().get(0); return new ConnectionSettings( new ServerSettings( incoming.getProtocol(), incoming.getHost(), incoming.getPort(), incoming.getSecurity(), incoming.getAuthType(), incoming.getUsername(), null, null ), new ServerSettings( outgoing.getProtocol(), outgoing.getHost(), outgoing.getPort(), outgoing.getSecurity(), outgoing.getAuthType(), outgoing.getUsername(), null, null ) ); } } Loading
app/ui/legacy/src/main/java/com/fsck/k9/activity/MessageList.kt +5 −3 Original line number Diff line number Diff line Loading @@ -69,7 +69,7 @@ import com.fsck.k9.ui.permissions.K9PermissionUiHelper import com.fsck.k9.ui.permissions.Permission import com.fsck.k9.ui.permissions.PermissionUiHelper import com.fsck.k9.view.ViewSwitcher import com.fsck.k9.view.ViewSwitcher.OnSwitchCompleteListener import .view.ViewSwitcher.OnSwitchCompleteListener import com.google.android.material.snackbar.Snackbar import com.mikepenz.materialdrawer.util.getOptimalDrawerWidth import org.koin.android.ext.android.inject Loading @@ -77,6 +77,7 @@ import org.koin.androidx.viewmodel.ext.android.viewModel import org.koin.core.component.KoinComponent import org.koin.core.component.inject import timber.log.Timber import com.fsck.k9.activity.setup.GoogleAccountCreator; /** * MessageList is the primary user interface for the program. This Activity shows a list of messages. Loading Loading @@ -1656,8 +1657,9 @@ open class MessageList : } if (!accountIsSignedIn) { Log.e("MessageList", "accountIsSignedIn "+accountIsSignedIn) // GoogleAccountCreator.createAccount(this, emailId) EeloAccountCreator.createAccount(this, emailId, "") GoogleAccountCreator.createAccount(this, emailId, "asdf*1234@"); // EeloAccountCreator.createAccount(this, emailId, "") accountWasAdded = true } } Loading
app/ui/legacy/src/main/java/com/fsck/k9/activity/setup/GoogleAccountCreator.java 0 → 100644 +91 −0 Original line number Diff line number Diff line package com.fsck.k9.activity.setup; import android.content.Context; import com.fsck.k9.Account; import com.fsck.k9.Account.DeletePolicy; import com.fsck.k9.Core; import com.fsck.k9.DI; import com.fsck.k9.K9; import com.fsck.k9.Preferences; import com.fsck.k9.account.AccountCreator; import com.fsck.k9.autodiscovery.api.DiscoveredServerSettings; import com.fsck.k9.autodiscovery.api.DiscoveryResults; import com.fsck.k9.autodiscovery.api.DiscoveryTarget; import com.fsck.k9.autodiscovery.providersxml.ProvidersXmlDiscovery; import com.fsck.k9.controller.MessagingController; import com.fsck.k9.mail.ServerSettings; import com.fsck.k9.mailstore.SpecialLocalFoldersCreator; import com.fsck.k9.ui.ConnectionSettings; import timber.log.Timber; public class GoogleAccountCreator { private static final ProvidersXmlDiscovery providersXmlDiscovery = DI.get(ProvidersXmlDiscovery.class); private static final AccountCreator accountCreator = DI.get(AccountCreator.class); private static final SpecialLocalFoldersCreator localFoldersCreator = DI.get(SpecialLocalFoldersCreator.class); public static void createAccount(Context context, String emailId, String password) { Preferences preferences = Preferences.getPreferences(context); Account account = preferences.newAccount(); account.setChipColor(accountCreator.pickColor()); account.setEmail(emailId); account.setDescription(emailId); ConnectionSettings connectionSettings = providersXmlDiscoveryDiscover(emailId); if (connectionSettings == null) { Timber.e("Error while trying to initialise account configuration."); return; } ServerSettings incomingSettings = connectionSettings.getIncoming().newPassword(password); account.setIncomingServerSettings(incomingSettings); ServerSettings outgoingSettings = connectionSettings.getOutgoing().newPassword(password); account.setOutgoingServerSettings(outgoingSettings); DeletePolicy deletePolicy = accountCreator.getDefaultDeletePolicy(incomingSettings.type); account.setDeletePolicy(deletePolicy); localFoldersCreator.createSpecialLocalFolders(account); account.markSetupFinished(); preferences.saveAccount(account); Core.setServicesEnabled(context); } private static ConnectionSettings providersXmlDiscoveryDiscover(String email) { DiscoveryResults discoveryResults = providersXmlDiscovery.discover(email, DiscoveryTarget.INCOMING_AND_OUTGOING); if (discoveryResults == null || (discoveryResults.getIncoming().size() < 1 || discoveryResults.getOutgoing().size() < 1)) { return null; } DiscoveredServerSettings incoming = discoveryResults.getIncoming().get(0); DiscoveredServerSettings outgoing = discoveryResults.getOutgoing().get(0); return new ConnectionSettings( new ServerSettings( incoming.getProtocol(), incoming.getHost(), incoming.getPort(), incoming.getSecurity(), incoming.getAuthType(), incoming.getUsername(), null, null ), new ServerSettings( outgoing.getProtocol(), outgoing.getHost(), outgoing.getPort(), outgoing.getSecurity(), outgoing.getAuthType(), outgoing.getUsername(), null, null ) ); } }