Skip to content

Commit

Permalink
fixed Select issue
Browse files Browse the repository at this point in the history
  • Loading branch information
FrankHossfeld committed Sep 11, 2023
1 parent 9b99a00 commit d61fd3d
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 20 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
import com.github.nalukit.domino.v2.message.binding.client.internal.helper.DominoV2MessageElementWrapper;
import com.github.nalukit.domino.v2.message.binding.shared.model.IsDominoV2Message;
import org.dominokit.domino.ui.events.EventType;
import org.dominokit.domino.ui.forms.InputFormField;
import org.dominokit.domino.ui.forms.suggest.AbstractSelect;

import java.util.ArrayList;
import java.util.HashMap;
Expand Down Expand Up @@ -33,12 +35,20 @@ public AbstractDominoV2MessageDriver() {
public void deregister() {
this.messageElementWrappers.values()
.forEach(e -> {
e.getFormElement()
.getInputElement()
.removeEventListener(EventType.blur,
e.getBlurEventListener());
e.setBlurEventListener(null);
});
if (e.getFormElement() instanceof InputFormField) {
((InputFormField<?, ?, ?>) e.getFormElement())
.getInputElement()
.removeEventListener(EventType.blur,
e.getBlurEventListener());
e.setBlurEventListener(null);
} else if (e.getFormElement() instanceof AbstractSelect) {
((AbstractSelect<?, ?, ?, ?, ?>) e.getFormElement())
.getInputElement()
.removeEventListener(EventType.blur,
e.getBlurEventListener());
e.setBlurEventListener(null);
}
});
}

@Override
Expand Down Expand Up @@ -94,13 +104,22 @@ public void register() {
if (clearOnBlur) {
elemental2.dom.EventListener eventlistener = evt -> w.getFormElement()
.clearInvalid();
w.getFormElement()
.getInputElement()
.addEventListener(EventType.blur,
eventlistener);
if (w.getFormElement() instanceof InputFormField) {
((InputFormField<?, ?, ?>) w.getFormElement())
.getInputElement()
.addEventListener(EventType.blur,
eventlistener);
} else if (w.getFormElement() instanceof AbstractSelect) {
((AbstractSelect<?, ?, ?, ?, ?>) w.getFormElement())
.getInputElement()
.addEventListener(EventType.blur,
eventlistener);
}
w.setBlurEventListener(eventlistener);
}
});


}

}
Original file line number Diff line number Diff line change
@@ -1,22 +1,23 @@
package com.github.nalukit.domino.v2.message.binding.client.internal.helper;

import elemental2.dom.EventListener;
import org.dominokit.domino.ui.forms.AbstractFormElement;
import org.dominokit.domino.ui.forms.InputFormField;
import org.dominokit.domino.ui.forms.suggest.AbstractSelect;

public class DominoV2MessageElementWrapper {

private final InputFormField<?, ?, ?> formElement;
private final String fieldId;
private EventListener blurEventListener;
private AbstractFormElement<?, ?> formElement;
private String fieldId;
private EventListener blurEventListener;
// private List<InvalidHandler> invalidHandlers;
// private List<ValidHandler> validHandlers;

public DominoV2MessageElementWrapper() {
this(null,
null);
@SuppressWarnings("unused")
private DominoV2MessageElementWrapper() {
}

public DominoV2MessageElementWrapper(InputFormField<?, ?, ?> formElement,
public DominoV2MessageElementWrapper(AbstractFormElement<?, ?> formElement,
String fieldId) {
this.formElement = formElement;
this.fieldId = fieldId;
Expand Down Expand Up @@ -81,7 +82,7 @@ public void setBlurEventListener(EventListener blurEventListener) {
*
* @return element
*/
public InputFormField<?, ?, ?> getFormElement() {
public AbstractFormElement<?, ?> getFormElement() {
return this.formElement;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,9 @@
import com.squareup.javapoet.MethodSpec;
import com.squareup.javapoet.ParameterizedTypeName;
import com.squareup.javapoet.TypeSpec;
import org.dominokit.domino.ui.forms.AbstractFormElement;
import org.dominokit.domino.ui.forms.InputFormField;
import org.dominokit.domino.ui.forms.suggest.AbstractSelect;

import javax.annotation.processing.AbstractProcessor;
import javax.annotation.processing.ProcessingEnvironment;
Expand Down Expand Up @@ -213,12 +215,12 @@ private void validateVariableElement(Element annotatedElement)
if (!this.dominoV2MessageProcessorUtils.extendsClassOrInterface(super.processingEnv.getTypeUtils(),
variableElement.asType(),
this.processingEnv.getElementUtils()
.getTypeElement(InputFormField.class.getCanonicalName())
.getTypeElement(AbstractFormElement.class.getCanonicalName())
.asType())) {
throw new DominoV2MessageProcessorException("Nalu-Message-Processor: " +
variableElement.getSimpleName()
.toString() +
": @MessageSupport: element must extend BasicFormElement (Domino-UI) super class");
": @MessageSupport: element must extend AbstractFormElement (Domino-UI) super class");
}
} else {
throw new DominoV2MessageProcessorException("Nalu-Message-Processory:" +
Expand Down

0 comments on commit d61fd3d

Please sign in to comment.