From 727ab272d5776156994badbf1cb01b7a6aaca4c5 Mon Sep 17 00:00:00 2001 From: Patrick Plitzner Date: Wed, 8 May 2019 13:40:03 +0200 Subject: [PATCH] ref #8263 Only refresh edited terms when saving --- .../editor/definedterm/e4/DefinedTermEditorE4.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/e4/DefinedTermEditorE4.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/e4/DefinedTermEditorE4.java index 142a3f6a8..07e7b7798 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/e4/DefinedTermEditorE4.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/e4/DefinedTermEditorE4.java @@ -170,16 +170,19 @@ IPartContentHasDetails, IPartContentHasSupplementalData, IE4SavablePart, IContex getConversationHolder().commit(); for(TermBase term:changedTerms){ if(term.isInstanceOf(DefinedTermBase.class)){ - CdmStore.getService(ITermService.class).merge((DefinedTermBase) term); + DefinedTermBase definedTermBase = (DefinedTermBase) term; + CdmStore.getService(ITermService.class).merge(definedTermBase); + viewer.refresh(TermDto.fromTerm(definedTermBase)); } else if(term.isInstanceOf(TermVocabulary.class)){ - CdmStore.getService(IVocabularyService.class).merge((TermVocabulary) term); + TermVocabulary voc = (TermVocabulary) term; + CdmStore.getService(IVocabularyService.class).merge(voc); + viewer.refresh(new TermVocabularyDto(voc.getUuid(), voc.getRepresentations(), voc.getTermType())); } } setDirty(false); input.initialiseVocabularies(); - viewer.refresh(); - changedTerms.clear(); + changedTerms.clear(); EventUtility.postEvent(WorkbenchEventConstants.REFRESH_SUPPLEMENTAL, true); } -- 2.34.1