From 66b75474533b14ea06570f7ef0e79924dc9b7105 Mon Sep 17 00:00:00 2001 From: Markus Kreth Date: Mon, 6 Apr 2020 22:26:49 +0200 Subject: [PATCH] NotesComponent sets Notetext only if not setPerson is running. --- .../vaadin/clubhelper/vaadinclubhelper/data/Person.java | 2 +- .../vaadinclubhelper/ui/components/NotesComponent.java | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/data/Person.java b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/data/Person.java index d0ebb23..5824a98 100644 --- a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/data/Person.java +++ b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/data/Person.java @@ -30,7 +30,7 @@ import javax.persistence.Table; @Entity @Table(name = "person") @Inheritance(strategy = InheritanceType.SINGLE_TABLE) -@NamedQuery(name = Person.QUERY_FINDALL, query = "SELECT p FROM Person p WHERE p.deleted is null") +@NamedQuery(name = Person.QUERY_FINDALL, query = "SELECT p FROM Person p WHERE p.deleted is null") @NamedQuery(name = Person.QUERY_FINDLOGIN, query = "FROM Person WHERE username = :username AND password = :password AND deleted is" + " null") public class Person extends BaseEntity implements Serializable { diff --git a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/NotesComponent.java b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/NotesComponent.java index f8c3dae..d762604 100644 --- a/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/NotesComponent.java +++ b/src/main/java/de/kreth/vaadin/clubhelper/vaadinclubhelper/ui/components/NotesComponent.java @@ -18,6 +18,8 @@ public class NotesComponent extends VerticalLayout { private boolean hasChanges; + private boolean isUpdating = false; + public NotesComponent() { notesComponent = new TextArea(); notesComponent.setMaxLength(2000); @@ -32,7 +34,7 @@ public class NotesComponent extends VerticalLayout { } private void textChange(ValueChangeEvent ev) { - if (note != null) { + if (note != null && !isUpdating) { if (ev.isUserOriginated()) { hasChanges = true; } @@ -41,6 +43,7 @@ public class NotesComponent extends VerticalLayout { } public void setPerson(Person person) { + isUpdating = true; notesComponent.clear(); hasChanges = false; if (person != null) { @@ -55,6 +58,7 @@ public class NotesComponent extends VerticalLayout { note.setPerson(person); } } + isUpdating = false; } public boolean hasChanges() {