diff options
Diffstat (limited to 'plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/contentmergeviewer/tree/provider/TreeMergeViewerItemContentProvider.java')
-rw-r--r-- | plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/contentmergeviewer/tree/provider/TreeMergeViewerItemContentProvider.java | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/contentmergeviewer/tree/provider/TreeMergeViewerItemContentProvider.java b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/contentmergeviewer/tree/provider/TreeMergeViewerItemContentProvider.java index 76ddd0009..4a02b6039 100644 --- a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/contentmergeviewer/tree/provider/TreeMergeViewerItemContentProvider.java +++ b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/contentmergeviewer/tree/provider/TreeMergeViewerItemContentProvider.java @@ -20,6 +20,7 @@ import static com.google.common.collect.Iterables.size; import static com.google.common.collect.Lists.newArrayList; import static com.google.common.collect.Lists.newArrayListWithCapacity; import static java.util.Collections.emptyList; +import static org.eclipse.emf.compare.merge.AbstractMerger.isInTerminalState; import static org.eclipse.emf.compare.utils.EMFComparePredicates.CONTAINMENT_REFERENCE_CHANGE; import static org.eclipse.emf.compare.utils.EMFComparePredicates.anyRefining; import static org.eclipse.emf.compare.utils.EMFComparePredicates.fromSide; @@ -46,7 +47,6 @@ import org.eclipse.emf.compare.ConflictKind; import org.eclipse.emf.compare.Diff; import org.eclipse.emf.compare.DifferenceKind; import org.eclipse.emf.compare.DifferenceSource; -import org.eclipse.emf.compare.DifferenceState; import org.eclipse.emf.compare.Match; import org.eclipse.emf.compare.ResourceAttachmentChange; import org.eclipse.emf.compare.graph.IGraphView; @@ -343,7 +343,7 @@ public class TreeMergeViewerItemContentProvider implements IMergeViewerItemConte Match match = comparison.getMatch(value); if (!isPseudoAddConflict(diff) && (isAddOnOppositeSide(diff, side) || isDeleteOnSameSide(diff, side) || isInsertOnBothSides(diff, match))) { - if (match == null && diff.getState() == DifferenceState.MERGED) { + if (match == null && isInTerminalState(diff)) { EObject bestSideValue = (EObject)getBestSideValue(parent, configuration.getSide()); match = comparison.getMatch(bestSideValue); match = getMatchWithNullValues(match); @@ -520,7 +520,7 @@ public class TreeMergeViewerItemContentProvider implements IMergeViewerItemConte Match match = comparison.getMatch(value); if (isAddOnOppositeSide(diff, side) || isDeleteOnSameSide(diff, side) || isInsertOnBothSides(diff, match)) { - if (match == null && diff.getState() == DifferenceState.MERGED) { + if (match == null && isInTerminalState(diff)) { EObject bestSideValue = (EObject)getBestSideValue(parent, configuration.getSide()); match = comparison.getMatch(bestSideValue); match = getMatchWithNullValues(match); @@ -817,7 +817,7 @@ public class TreeMergeViewerItemContentProvider implements IMergeViewerItemConte * {@code false} otherwise. */ private boolean isInsertOnBothSides(Diff diff, Match match) { - return diff.getState() == DifferenceState.MERGED + return isInTerminalState(diff) && (match == null || (match.getLeft() == null && match.getRight() == null)); } @@ -861,7 +861,7 @@ public class TreeMergeViewerItemContentProvider implements IMergeViewerItemConte * otherwise. */ private boolean isAddOnOppositeSide(Diff diff, MergeViewerSide side) { - if (diff.getState() != DifferenceState.MERGED && diff.getKind() == DifferenceKind.ADD) { + if (!isInTerminalState(diff) && diff.getKind() == DifferenceKind.ADD) { DifferenceSource source = diff.getSource(); return (source == DifferenceSource.LEFT && side == MergeViewerSide.RIGHT) || (source == DifferenceSource.RIGHT && side == MergeViewerSide.LEFT); @@ -880,7 +880,7 @@ public class TreeMergeViewerItemContentProvider implements IMergeViewerItemConte * otherwise. */ private boolean isDeleteOnSameSide(Diff diff, MergeViewerSide side) { - if (diff.getState() != DifferenceState.MERGED && diff.getKind() == DifferenceKind.DELETE) { + if (!isInTerminalState(diff) && diff.getKind() == DifferenceKind.DELETE) { DifferenceSource source = diff.getSource(); return (source == DifferenceSource.LEFT && side == MergeViewerSide.LEFT) || (source == DifferenceSource.RIGHT && side == MergeViewerSide.RIGHT); |