X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/48f13c8adc5c4b9bc4ca96bf13939a7d7cfae562..9aab2d26da38f26e7ff03a0b5db3bd01b51bce05:/src/com/owncloud/android/ui/activity/AuthenticatorActivity.java diff --git a/src/com/owncloud/android/ui/activity/AuthenticatorActivity.java b/src/com/owncloud/android/ui/activity/AuthenticatorActivity.java index 86d9c4b6..52714b6a 100644 --- a/src/com/owncloud/android/ui/activity/AuthenticatorActivity.java +++ b/src/com/owncloud/android/ui/activity/AuthenticatorActivity.java @@ -24,12 +24,12 @@ import java.net.URL; import com.owncloud.android.AccountUtils; import com.owncloud.android.authenticator.AccountAuthenticator; import com.owncloud.android.authenticator.AuthenticationRunnable; -import com.owncloud.android.authenticator.ConnectionCheckOperation; import com.owncloud.android.authenticator.OnAuthenticationResultListener; import com.owncloud.android.authenticator.OnConnectCheckListener; import com.owncloud.android.ui.dialog.SslValidatorDialog; import com.owncloud.android.ui.dialog.SslValidatorDialog.OnSslValidatorListener; import com.owncloud.android.network.OwnCloudClientUtils; +import com.owncloud.android.operations.ConnectionCheckOperation; import com.owncloud.android.operations.OnRemoteOperationListener; import com.owncloud.android.operations.RemoteOperation; import com.owncloud.android.operations.RemoteOperationResult; @@ -89,7 +89,7 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity private static final String IS_SSL_CONN = "IS_SSL_CONN"; private int mStatusText, mStatusIcon; private boolean mStatusCorrect, mIsSslConn; - private RemoteOperationResult mLastSslFailedResult; + private RemoteOperationResult mLastSslUntrustedServerResult; public static final String PARAM_USERNAME = "param_Username"; public static final String PARAM_HOSTNAME = "param_Hostname"; @@ -160,10 +160,7 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity break; } case DIALOG_SSL_VALIDATOR: { - SslValidatorDialog sslValidator = SslValidatorDialog.newInstance(this, mLastSslFailedResult, this); - if (sslValidator != null) - dialog = sslValidator; - // else, mLastSslFailedResult is not an SSL fail recoverable by accepting the server certificate as reliable; dialog will still be null + dialog = SslValidatorDialog.newInstance(this, mLastSslUntrustedServerResult, this); break; } case DIALOG_CERT_NOT_SAVED: { @@ -192,7 +189,7 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity case DIALOG_CERT_NOT_SAVED: break; case DIALOG_SSL_VALIDATOR: { - ((SslValidatorDialog)dialog).updateResult(mLastSslFailedResult); + ((SslValidatorDialog)dialog).updateResult(mLastSslUntrustedServerResult); break; } default: @@ -243,8 +240,6 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity AccountAuthenticator.ACCOUNT_TYPE); intent.putExtra(AccountManager.KEY_USERDATA, username); - accManager.setUserData(account, AccountAuthenticator.KEY_OC_URL, - url.toString()); accManager.setUserData(account, AccountAuthenticator.KEY_OC_VERSION, mConnChkRunnable .getDiscoveredVersion().toString()); @@ -481,8 +476,14 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity onFocusChange(findViewById(R.id.host_URL), false); } else if (v.getId() == R.id.viewPassword) { TextView view = (TextView) findViewById(R.id.account_password); - int input_type = InputType.TYPE_CLASS_TEXT - | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD; + int input_type = view.getInputType(); + if ((input_type & InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD) == InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD) { + input_type = InputType.TYPE_CLASS_TEXT + | InputType.TYPE_TEXT_VARIATION_PASSWORD; + } else { + input_type = InputType.TYPE_CLASS_TEXT + | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD; + } view.setInputType(input_type); } } @@ -535,18 +536,18 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity mStatusText = R.string.auth_incorrect_address_title; break; - case SSL_ERROR: + case SSL_RECOVERABLE_PEER_UNVERIFIED: mStatusIcon = R.drawable.common_error; - mStatusText = R.string.auth_ssl_general_error_title; - //mStatusText = R.string.auth_ssl_unverified_server_title; - mLastSslFailedResult = result; - showDialog(DIALOG_SSL_VALIDATOR); // see onCreateDialog(); it does not always show the dialog - /*if (InteractiveSslValidatorActivity.isRecoverable(result)) { - Intent intent = new Intent(this, InteractiveSslValidatorActivity.class); - startActivityForResult(intent, REQUEST_FOR_SSL_CERT); - }*/ - break; + mStatusText = R.string.auth_ssl_unverified_server_title; + mLastSslUntrustedServerResult = result; + showDialog(DIALOG_SSL_VALIDATOR); + break; + case SSL_ERROR: + mStatusIcon = R.drawable.common_error; + mStatusText = R.string.auth_ssl_general_error_title; + break; + case HOST_NOT_AVAILABLE: mStatusIcon = R.drawable.common_error; mStatusText = R.string.auth_unknown_host_title; @@ -569,7 +570,7 @@ public class AuthenticatorActivity extends AccountAuthenticatorActivity mStatusText = R.string.auth_unknown_error_title; break; default: - Log.e(TAG, "Incorrect connection checker result type: " + operation); + Log.e(TAG, "Incorrect connection checker result type: " + result.getHttpCode()); } setResultIconAndText(mStatusIcon, mStatusText); if (!mStatusCorrect)