Merge branch 'master' into tls-client-cert-auth

Conflicts:
	res/layout/account_setup_basics.xml
	res/values/strings.xml
	src/com/fsck/k9/activity/setup/AccountSetupBasics.java
This commit is contained in:
Joe Steele 2014-08-19 16:19:02 -04:00
commit 1783dd1a63
12 changed files with 86 additions and 35 deletions

View File

@ -4,11 +4,11 @@ buildscript {
}
dependencies {
classpath 'com.android.tools.build:gradle:0.11.+'
classpath 'com.android.tools.build:gradle:0.12.2'
}
}
apply plugin: 'android'
apply plugin: 'com.android.application'
dependencies {
compile project(':plugins:Android-PullToRefresh:library')
@ -21,7 +21,7 @@ dependencies {
android {
compileSdkVersion 19
buildToolsVersion '19.1.0'
buildToolsVersion '20.0.0'
sourceSets {
main {

View File

@ -1,8 +1,8 @@
apply plugin: 'android-library'
apply plugin: 'com.android.library'
android {
compileSdkVersion 19
buildToolsVersion '19.1.0'
buildToolsVersion '20.0.0'
sourceSets {
main {

View File

@ -1,4 +1,4 @@
apply plugin: 'android-library'
apply plugin: 'com.android.library'
android {
compileSdkVersion 19

View File

@ -1,8 +1,8 @@
apply plugin: 'android-library'
apply plugin: 'com.android.library'
android {
compileSdkVersion 19
buildToolsVersion '19.1.0'
buildToolsVersion '20.0.0'
sourceSets {
main {

View File

@ -5,16 +5,16 @@ buildscript {
}
dependencies {
classpath 'com.android.tools.build:gradle:0.11.+'
classpath 'com.android.tools.build:gradle:0.12.2'
}
}
apply plugin: 'android-library'
apply plugin: 'com.android.library'
android {
compileSdkVersion 17
buildToolsVersion '19.1.0'
compileSdkVersion 19
buildToolsVersion '20.0.0'
// NOTE: We are using the old folder structure to also support Eclipse
sourceSets {
main {

View File

@ -34,6 +34,12 @@
android:layout_width="fill_parent"
android:nextFocusDown="@+id/next"
/>
<CheckBox
android:id="@+id/show_password"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="@string/show_password"
/>
<com.fsck.k9.view.ClientCertificateSpinner
android:id="@+id/account_client_certificate_spinner"
android:layout_width="fill_parent"

View File

@ -1108,7 +1108,9 @@ Please submit bug reports, contribute new features and ask questions at
<string name="fetching_attachment_dialog_message">Fetching attachment…</string>
<string name="auth_external_error">Unable to authenticate. The server does not advertise the SASL EXTERNAL capability. This could be due to a problem with the client certificate (expired, unknown certificate authority) or some other configuration problem.</string>
<string name="show_password">Show password</string>
<!-- === OpenPGP specific ================================================================== -->
<string name="openpgp_decrypting_verifying">Decrypting/Verifying…</string>
<string name="openpgp_successful_decryption">Successful decryption</string>

View File

@ -105,10 +105,6 @@
<incoming uri="pop3+ssl+://pop.east.cox.net" username="$user" />
<outgoing uri="smtp+ssl+://smtp.east.cox.net" username="$user" />
</provider>
<provider id="dotmac" label=".Mac" domain="mac.com">
<incoming uri="imap+ssl+://imap.mail.me.com" username="$user" />
<outgoing uri="smtp+tls+://smtp.mail.me.com" username="$email" />
</provider>
<provider id="live" label="Windows Live Hotmail" domain="live.com">
<incoming uri="imap+ssl+://imap-mail.outlook.com" username="$email" />
<outgoing uri="smtp+tls+://smtp-mail.outlook.com" username="$email" />
@ -125,10 +121,6 @@
<incoming uri="imap+ssl+://imap-mail.outlook.com" username="$email" />
<outgoing uri="smtp+tls+://smtp-mail.outlook.com" username="$email" />
</provider>
<provider id="mobileme" label="MobileMe" domain="me.com">
<incoming uri="imap+ssl+://imap.mail.me.com" username="$user" />
<outgoing uri="smtp+tls+://smtp.mail.me.com" username="$email" />
</provider>
<provider id="montclair.edu" label="MSU" domain="montclair.edu">
<incoming uri="imap+ssl+://mail.montclair.edu" username="$user" />
<outgoing uri="smtp+tls+://smtp.montclair.edu" username="$user" />
@ -151,6 +143,24 @@
<incoming uri="imap+ssl+://imap.mail.yahoo.com" username="$email" />
<outgoing uri="smtp+ssl+://smtp.mail.yahoo.com" username="$email" />
</provider>
<!-- Apple -->
<provider id="apple" label="Apple" domain="apple.com">
<incoming uri="imap+ssl+://imap.mail.apple.com" username="$user" />
<outgoing uri="smtp+tls+://smtp.mail.apple.com" username="$user" />
</provider>
<provider id="dotmac" label=".Mac" domain="mac.com">
<incoming uri="imap+ssl+://imap.mail.mac.com" username="$user" />
<outgoing uri="smtp+tls+://smtp.mail.mac.com" username="$user" />
</provider>
<provider id="mobileme" label="MobileMe" domain="me.com">
<incoming uri="imap+ssl+://imap.mail.me.com" username="$user" />
<outgoing uri="smtp+tls+://smtp.mail.me.com" username="$user" />
</provider>
<provider id="icloud" label="iCloud" domain="icloud.com">
<incoming uri="imap+ssl+://imap.mail.icloud.com" username="$user" />
<outgoing uri="smtp+tls+://smtp.mail.icloud.com" username="$user" />
</provider>
<!-- Australia -->
<provider id="fastmail-fm" label="Fastmail" domain="fastmail.fm">

View File

@ -277,10 +277,18 @@ public class FolderList extends K9ListActivity {
mInflater = getLayoutInflater();
onNewIntent(getIntent());
context = this;
onNewIntent(getIntent());
if (isFinishing()) {
/*
* onNewIntent() may call finish(), but execution will still continue here.
* We return now because we don't want to display the changelog which can
* result in a leaked window error.
*/
return;
}
ChangeLog cl = new ChangeLog(this);
if (cl.isFirstRun()) {
cl.getLogDialog().show();
@ -308,7 +316,11 @@ public class FolderList extends K9ListActivity {
mAccount = Preferences.getPreferences(this).getAccount(accountUuid);
if (mAccount == null) {
// This shouldn't normally happen. But apparently it does. See issue 2261.
/*
* This can happen when a launcher shortcut is created for an
* account, and then the account is deleted or data is wiped, and
* then the shortcut is used.
*/
finish();
return;
}

View File

@ -1,6 +1,14 @@
package com.fsck.k9.activity.setup;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URLEncoder;
import java.util.Locale;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
@ -9,6 +17,7 @@ import android.content.Intent;
import android.content.res.XmlResourceParser;
import android.os.Bundle;
import android.text.Editable;
import android.text.InputType;
import android.text.TextWatcher;
import android.util.Log;
import android.view.View;
@ -19,7 +28,11 @@ import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.EditText;
import com.fsck.k9.*;
import com.fsck.k9.Account;
import com.fsck.k9.EmailAddressValidator;
import com.fsck.k9.K9;
import com.fsck.k9.Preferences;
import com.fsck.k9.R;
import com.fsck.k9.activity.K9Activity;
import com.fsck.k9.activity.setup.AccountSetupCheckSettings.CheckDirection;
import com.fsck.k9.helper.Utility;
@ -33,13 +46,6 @@ import com.fsck.k9.mail.transport.SmtpTransport;
import com.fsck.k9.view.ClientCertificateSpinner;
import com.fsck.k9.view.ClientCertificateSpinner.OnClientCertificateChangedListener;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URLEncoder;
import java.util.Locale;
/**
* Prompts the user for the email address and password.
* Attempts to lookup default settings for the domain the user specified. If the
@ -83,6 +89,17 @@ public class AccountSetupBasics extends K9Activity
mClientCertificateSpinner = (ClientCertificateSpinner)findViewById(R.id.account_client_certificate_spinner);
mNextButton = (Button)findViewById(R.id.next);
mManualSetupButton = (Button)findViewById(R.id.manual_setup);
CheckBox showPassword = (CheckBox) findViewById(R.id.show_password);
showPassword.setOnCheckedChangeListener (new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
mPasswordView.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
} else {
mPasswordView.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
}
}
});
mNextButton.setOnClickListener(this);
mManualSetupButton.setOnClickListener(this);

View File

@ -259,7 +259,7 @@ public class SmtpTransport extends Transport {
// characters (see issue 2143), so use IP address.
if (!ipAddr.equals("")) {
if (localAddress instanceof Inet6Address) {
localHost = "[IPV6:" + ipAddr + "]";
localHost = "[IPv6:" + ipAddr + "]";
} else {
localHost = "[" + ipAddr + "]";
}

View File

@ -381,7 +381,11 @@ public class MessageOpenPgpView extends LinearLayout {
}
private void handleError(final OpenPgpError error) {
mFragment.getActivity().runOnUiThread(new Runnable() {
Activity activity = mFragment.getActivity();
if (activity == null) {
return;
}
activity.runOnUiThread(new Runnable() {
@Override
public void run() {