diff --git a/platform/diff-impl/src/com/intellij/diff/merge/TextMergeChange.java b/platform/diff-impl/src/com/intellij/diff/merge/TextMergeChange.java index 0d0190d86a4d..b7eb190ba3b0 100644 --- a/platform/diff-impl/src/com/intellij/diff/merge/TextMergeChange.java +++ b/platform/diff-impl/src/com/intellij/diff/merge/TextMergeChange.java @@ -59,8 +59,7 @@ public class TextMergeChange extends ThreesideDiffChangeBase { private final boolean[] myResolved = new boolean[2]; private boolean myOnesideAppliedConflict; - @Nullable private List myInnerFragments; - private boolean myInnerFragmentsDamaged; + @Nullable private List myInnerFragments; // warning: might be out of date @CalledInAwt public TextMergeChange(@NotNull MergeLineFragment fragment, int index, @NotNull TextMergeViewer viewer) { @@ -128,11 +127,6 @@ public class TextMergeChange extends ThreesideDiffChangeBase { destroyHighlighter(); installHighlighter(); - if (!myInnerFragmentsDamaged) { - destroyInnerHighlighter(); - installInnerHighlighter(); - } - myViewer.repaintDividers(); } @@ -175,7 +169,6 @@ public class TextMergeChange extends ThreesideDiffChangeBase { void setResolved(@NotNull Side side, boolean value) { myResolved[side.getIndex()] = value; - markInnerFragmentsDamaged(); if (isResolved()) { destroyInnerHighlighter(); } @@ -247,16 +240,15 @@ public class TextMergeChange extends ThreesideDiffChangeBase { myEndLine = value; } - public void markInnerFragmentsDamaged() { - myInnerFragmentsDamaged = true; - } - @CalledInAwt public void setInnerFragments(@Nullable List innerFragments) { - myInnerFragmentsDamaged = false; if (myInnerFragments == null && innerFragments == null) return; myInnerFragments = innerFragments; + doReinstallHighlighter(); + + destroyInnerHighlighter(); + installInnerHighlighter(); } // diff --git a/platform/diff-impl/src/com/intellij/diff/merge/TextMergeViewer.java b/platform/diff-impl/src/com/intellij/diff/merge/TextMergeViewer.java index 2253abf942b1..594b3f887db5 100644 --- a/platform/diff-impl/src/com/intellij/diff/merge/TextMergeViewer.java +++ b/platform/diff-impl/src/com/intellij/diff/merge/TextMergeViewer.java @@ -649,7 +649,6 @@ public class TextMergeViewer implements MergeTool.MergeViewer { myChangesToUpdate.add(change); } else { - change.markInnerFragmentsDamaged(); change.doReinstallHighlighter(); myInnerDiffWorker.scheduleRediff(change); } @@ -667,7 +666,6 @@ public class TextMergeViewer implements MergeTool.MergeViewer { if (myBulkChangeUpdateDepth == 0) { for (TextMergeChange change : myChangesToUpdate) { - change.markInnerFragmentsDamaged(); change.doReinstallHighlighter(); } myInnerDiffWorker.scheduleRediff(myChangesToUpdate);