diff --git a/app/src/main/java/eu/faircode/email/FragmentAccount.java b/app/src/main/java/eu/faircode/email/FragmentAccount.java
index 37141292d8..f024b7b166 100644
--- a/app/src/main/java/eu/faircode/email/FragmentAccount.java
+++ b/app/src/main/java/eu/faircode/email/FragmentAccount.java
@@ -249,6 +249,7 @@ public class FragmentAccount extends FragmentEx {
etHost.setText(provider.imap_host);
etPort.setText(provider.imap_host == null ? null : Integer.toString(provider.imap_port));
+ cbStartTls.setChecked(provider.imap_starttls);
etUser.setText(null);
tilPassword.getEditText().setText(null);
@@ -292,6 +293,7 @@ public class FragmentAccount extends FragmentEx {
if (srv != null) {
etHost.setText(srv.getTarget().toString(true));
etPort.setText(Integer.toString(srv.getPort()));
+ cbStartTls.setChecked(srv.getPort() == 143);
}
}
diff --git a/app/src/main/java/eu/faircode/email/FragmentIdentity.java b/app/src/main/java/eu/faircode/email/FragmentIdentity.java
index 150321f151..1ea5a4b9d8 100644
--- a/app/src/main/java/eu/faircode/email/FragmentIdentity.java
+++ b/app/src/main/java/eu/faircode/email/FragmentIdentity.java
@@ -175,7 +175,7 @@ public class FragmentIdentity extends FragmentEx {
// This is needed because the spinner might be invisible
etHost.setText(provider.smtp_host);
etPort.setText(Integer.toString(provider.smtp_port));
- cbStartTls.setChecked(provider.starttls);
+ cbStartTls.setChecked(provider.smtp_starttls);
break;
}
@@ -210,7 +210,7 @@ public class FragmentIdentity extends FragmentEx {
// Set associated host/port/starttls
etHost.setText(provider.smtp_host);
etPort.setText(position == 0 ? null : Integer.toString(provider.smtp_port));
- cbStartTls.setChecked(provider.starttls);
+ cbStartTls.setChecked(provider.smtp_starttls);
}
@Override
diff --git a/app/src/main/java/eu/faircode/email/Provider.java b/app/src/main/java/eu/faircode/email/Provider.java
index c182d1dc0a..47b23d8e4d 100644
--- a/app/src/main/java/eu/faircode/email/Provider.java
+++ b/app/src/main/java/eu/faircode/email/Provider.java
@@ -37,10 +37,11 @@ public class Provider {
public String link;
public String type;
public String imap_host;
+ public boolean imap_starttls;
public int imap_port;
public String smtp_host;
public int smtp_port;
- public boolean starttls;
+ public boolean smtp_starttls;
private Provider() {
}
@@ -67,10 +68,11 @@ public class Provider {
} else if ("imap".equals(xml.getName())) {
provider.imap_host = xml.getAttributeValue(null, "host");
provider.imap_port = xml.getAttributeIntValue(null, "port", 0);
+ provider.imap_starttls = xml.getAttributeBooleanValue(null, "starttls", false);
} else if ("smtp".equals(xml.getName())) {
provider.smtp_host = xml.getAttributeValue(null, "host");
provider.smtp_port = xml.getAttributeIntValue(null, "port", 0);
- provider.starttls = xml.getAttributeBooleanValue(null, "starttls", false);
+ provider.smtp_starttls = xml.getAttributeBooleanValue(null, "starttls", false);
} else
throw new IllegalAccessException(xml.getName());
} else if (eventType == XmlPullParser.END_TAG) {
diff --git a/app/src/main/res/xml/providers.xml b/app/src/main/res/xml/providers.xml
index 6aa5cb9c63..3c91089aba 100644
--- a/app/src/main/res/xml/providers.xml
+++ b/app/src/main/res/xml/providers.xml
@@ -6,7 +6,8 @@
type="com.google">
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />
+ port="993"
+ starttls="false" />