diff options
2 files changed, 22 insertions, 38 deletions
diff --git a/bundles/org.eclipse.compare/compare/org/eclipse/compare/contentmergeviewer/TextMergeViewer.java b/bundles/org.eclipse.compare/compare/org/eclipse/compare/contentmergeviewer/TextMergeViewer.java index b8533b208..2397170de 100644 --- a/bundles/org.eclipse.compare/compare/org/eclipse/compare/contentmergeviewer/TextMergeViewer.java +++ b/bundles/org.eclipse.compare/compare/org/eclipse/compare/contentmergeviewer/TextMergeViewer.java @@ -737,11 +737,7 @@ public class TextMergeViewer extends ContentMergeViewer { SELECTED_OUTGOING= getForeground(display); OUTGOING= interpolate(SELECTED_OUTGOING, bg, 0.6); OUTGOING_FILL= interpolate(SELECTED_OUTGOING, bg, 0.97); - - // invalidate color cache - fColors= null; - // disposeColors(); // not yet enabled because of #28388 - + refreshBirdsEyeView(); invalidateLines(); @@ -833,7 +829,15 @@ public class TextMergeViewer extends ContentMergeViewer { unsetDocument(fLeft); unsetDocument(fRight); - disposeColors(); + if (fColors != null) { + Iterator i= fColors.values().iterator(); + while (i.hasNext()) { + Color color= (Color) i.next(); + if (!color.isDisposed()) + color.dispose(); + } + fColors= null; + } if (fFont != null) { fFont.dispose(); @@ -846,19 +850,7 @@ public class TextMergeViewer extends ContentMergeViewer { super.handleDispose(event); } - - private void disposeColors() { - if (fColors != null) { - Iterator i= fColors.values().iterator(); - while (i.hasNext()) { - Color color= (Color) i.next(); - if (!color.isDisposed()) - color.dispose(); - } - fColors= null; - } - } - + //------------------------------------------------------------------------------------------------------------- //--- internal ------------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------------------------- diff --git a/bundles/org.eclipse.compare/plugins/org.eclipse.compare/compare/org/eclipse/compare/contentmergeviewer/TextMergeViewer.java b/bundles/org.eclipse.compare/plugins/org.eclipse.compare/compare/org/eclipse/compare/contentmergeviewer/TextMergeViewer.java index b8533b208..2397170de 100644 --- a/bundles/org.eclipse.compare/plugins/org.eclipse.compare/compare/org/eclipse/compare/contentmergeviewer/TextMergeViewer.java +++ b/bundles/org.eclipse.compare/plugins/org.eclipse.compare/compare/org/eclipse/compare/contentmergeviewer/TextMergeViewer.java @@ -737,11 +737,7 @@ public class TextMergeViewer extends ContentMergeViewer { SELECTED_OUTGOING= getForeground(display); OUTGOING= interpolate(SELECTED_OUTGOING, bg, 0.6); OUTGOING_FILL= interpolate(SELECTED_OUTGOING, bg, 0.97); - - // invalidate color cache - fColors= null; - // disposeColors(); // not yet enabled because of #28388 - + refreshBirdsEyeView(); invalidateLines(); @@ -833,7 +829,15 @@ public class TextMergeViewer extends ContentMergeViewer { unsetDocument(fLeft); unsetDocument(fRight); - disposeColors(); + if (fColors != null) { + Iterator i= fColors.values().iterator(); + while (i.hasNext()) { + Color color= (Color) i.next(); + if (!color.isDisposed()) + color.dispose(); + } + fColors= null; + } if (fFont != null) { fFont.dispose(); @@ -846,19 +850,7 @@ public class TextMergeViewer extends ContentMergeViewer { super.handleDispose(event); } - - private void disposeColors() { - if (fColors != null) { - Iterator i= fColors.values().iterator(); - while (i.hasNext()) { - Color color= (Color) i.next(); - if (!color.isDisposed()) - color.dispose(); - } - fColors= null; - } - } - + //------------------------------------------------------------------------------------------------------------- //--- internal ------------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------------------------- |