diff --git a/src/main/java/ru/touchin/templates/validation/validationcontrollers/EditTextValidationController.java b/src/main/java/ru/touchin/templates/validation/validationcontrollers/EditTextValidationController.java index 7b62a7b..cf83960 100644 --- a/src/main/java/ru/touchin/templates/validation/validationcontrollers/EditTextValidationController.java +++ b/src/main/java/ru/touchin/templates/validation/validationcontrollers/EditTextValidationController.java @@ -39,6 +39,8 @@ import rx.Observable; public class EditTextValidationController extends ValidationController> { + private boolean showErrorOnFocusOut = true; + public EditTextValidationController(@NonNull final EditTextValidator validationWrapper) { super(validationWrapper); } @@ -56,7 +58,7 @@ public class EditTextValidationController return Observable.combineLatest(activatedObservable, getValidator().getWrapperModel().observe(), focusOutObservable, - getValidator().getShowFullCheck().observe(), + showErrorOnFocusOut ? getValidator().getShowFullCheck().observe() : Observable.just(false), this::getValidationPair) .switchMap(validationPair -> { if (validationPair == null) { @@ -93,4 +95,14 @@ public class EditTextValidationController return new NonNullPair<>(focus, getValidator().fullValidate(text)); } + /** + * If we don't want to show error when focus is lost. + * + * @param showErrorOnFocusOut show an error or don't show an error. + * + */ + public void setShowErrorOnFocusOut(final boolean showErrorOnFocusOut) { + this.showErrorOnFocusOut = showErrorOnFocusOut; + } + } \ No newline at end of file