aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/eu/siacs/conversations/ui/forms/FormTextFieldWrapper.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/eu/siacs/conversations/ui/forms/FormTextFieldWrapper.java')
-rw-r--r--src/main/java/eu/siacs/conversations/ui/forms/FormTextFieldWrapper.java19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/main/java/eu/siacs/conversations/ui/forms/FormTextFieldWrapper.java b/src/main/java/eu/siacs/conversations/ui/forms/FormTextFieldWrapper.java
index 8f70dd37..71ed6e4a 100644
--- a/src/main/java/eu/siacs/conversations/ui/forms/FormTextFieldWrapper.java
+++ b/src/main/java/eu/siacs/conversations/ui/forms/FormTextFieldWrapper.java
@@ -1,6 +1,7 @@
package eu.siacs.conversations.ui.forms;
import android.content.Context;
+import android.text.InputType;
import android.text.SpannableString;
import android.text.style.ForegroundColorSpan;
import android.text.style.StyleSpan;
@@ -20,7 +21,10 @@ public class FormTextFieldWrapper extends FormFieldWrapper {
protected FormTextFieldWrapper(Context context, Field field) {
super(context, field);
editText = (EditText) view.findViewById(R.id.field);
- editText.setSingleLine("text-single".equals(field.getType()));
+ editText.setSingleLine(!"text-multi".equals(field.getType()));
+ if ("text-private".equals(field.getType())) {
+ editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
+ }
}
@Override
@@ -36,16 +40,25 @@ public class FormTextFieldWrapper extends FormFieldWrapper {
textView.setText(spannableString);
}
+ protected String getValue() {
+ return editText.getText().toString();
+ }
+
@Override
- List<String> getValues() {
+ public List<String> getValues() {
List<String> values = new ArrayList<>();
- for (String line : editText.getText().toString().split("\\n")) {
+ for (String line : getValue().split("\\n")) {
values.add(line);
}
return values;
}
@Override
+ public boolean validates() {
+ return getValue().trim().length() > 0 || !field.isRequired();
+ }
+
+ @Override
protected int getLayoutResource() {
return R.layout.form_text;
}