Improved errors

This commit is contained in:
str4d
2014-08-30 09:37:30 +00:00
parent 85039f7bbf
commit cb34f8cf30
4 changed files with 44 additions and 22 deletions

View File

@@ -312,21 +312,11 @@ public class NewEmailFragment extends Fragment {
Address[] rcpts = email.getAllRecipients();
if (rcpts == null || rcpts.length == 0) {
// No recipients
DialogFragment df = new DialogFragment() {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setMessage(R.string.add_one_recipient)
.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
return builder.create();
}
};
df.show(getActivity().getSupportFragmentManager(), "norecipients");
mRecipients.setError(getActivity().getString(R.string.add_one_recipient));
mRecipients.requestFocus();
return false;
} else {
mRecipients.setError(null);
}
email.setSubject(mSubject.getText().toString(), "UTF-8");

View File

@@ -136,6 +136,15 @@ public class EditContactFragment extends EditPictureFragment {
String destination = mDestinationField.getText().toString();
String text = mTextField.getText().toString();
// Check fields
if (destination.isEmpty()) {
mDestinationField.setError(getActivity().getString(R.string.this_field_is_required));
mDestinationField.requestFocus();
return true;
} else {
mDestinationField.setError(null);
}
mError.setText("");
try {
@@ -144,8 +153,15 @@ public class EditContactFragment extends EditPictureFragment {
if (mDestination == null) // Only set if adding new contact
getActivity().setResult(Activity.RESULT_OK);
getActivity().finish();
} else
mError.setText(err);
} else {
if (err.startsWith("No Email Destination found in string:") ||
err.startsWith("Not a valid Email Destination:")) {
mDestinationField.setError(getActivity().getString(R.string.not_a_valid_bote_address));
mDestinationField.requestFocus();
} else {
mError.setText(err);
}
}
} catch (PasswordException e) {
// TODO Auto-generated catch block
e.printStackTrace();

View File

@@ -190,13 +190,24 @@ public abstract class IdentityShipFragment extends Fragment {
if (encrypt) {
password = mPassword.getText().toString();
String confirmPassword = mConfirmPassword.getText().toString();
if (password.isEmpty()) {
mError.setText(R.string.password_empty);
mPassword.setError(getActivity().getString(R.string.this_field_is_required));
mPassword.requestFocus();
return;
} else
mPassword.setError(null);
if (confirmPassword.isEmpty()) {
mConfirmPassword.setError(getActivity().getString(R.string.this_field_is_required));
mConfirmPassword.requestFocus();
return;
} else if (!password.equals(confirmPassword)) {
mError.setText(R.string.passwords_do_not_match);
mConfirmPassword.setError(getActivity().getString(R.string.passwords_do_not_match));
mConfirmPassword.requestFocus();
return;
}
} else
mConfirmPassword.setError(null);
}
File exportFile = new File(Environment.getExternalStoragePublicDirectory(
@@ -204,9 +215,13 @@ public abstract class IdentityShipFragment extends Fragment {
), exportFilename + suffix);
if (exportFile.exists()) {
// TODO ask to rename or overwrite
mError.setText(R.string.file_exists);
mExportFilename.setError(getActivity().getString(R.string.file_exists));
mExportFilename.requestFocus();
return;
} else
exportIdentities(exportFile, password);
mExportFilename.setError(null);
exportIdentities(exportFile, password);
}
});
}