Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndre Weinand2004-06-06 16:58:00 -0400
committerAndre Weinand2004-06-06 16:58:00 -0400
commit8c71034b8ea94af041b61a624fda3b1f677dfe9f (patch)
tree2ce9a57758bdc01a13b7fae84dc1f48585bde086 /bundles/org.eclipse.compare/compare
parent99212109f22da106c2bcf02c4d716637083e3c41 (diff)
downloadeclipse.platform.team-8c71034b8ea94af041b61a624fda3b1f677dfe9f.tar.gz
eclipse.platform.team-8c71034b8ea94af041b61a624fda3b1f677dfe9f.tar.xz
eclipse.platform.team-8c71034b8ea94af041b61a624fda3b1f677dfe9f.zip
fixed #55876, #65205
Diffstat (limited to 'bundles/org.eclipse.compare/compare')
-rw-r--r--bundles/org.eclipse.compare/compare/org/eclipse/compare/contentmergeviewer/TextMergeViewer.java12
1 files changed, 12 insertions, 0 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 9c8271f22..abb3476d7 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
@@ -1046,6 +1046,7 @@ public class TextMergeViewer extends ContentMergeViewer {
public void handleEvent(Event e) {
int vpos= ((ScrollBar)e.widget).getSelection();
scrollVertical(vpos, vpos, vpos, null);
+ workaround65205();
}
}
);
@@ -1101,11 +1102,22 @@ public class TextMergeViewer extends ContentMergeViewer {
ScrollBar sb3= st3.getHorizontalBar();
st3.setHorizontalPixel((int)((sb3.getMaximum()-sb3.getThumb()) * v));
}
+ workaround65205();
}
}
});
}
+ /**
+ * A workaround for bug #65205.
+ * On MacOS X a Display.update() is required to flush pending paint requests after
+ * programmatical scolling.
+ */
+ private void workaround65205() {
+ if (fIsCarbon && fComposite != null && !fComposite.isDisposed())
+ fComposite.getDisplay().update();
+ }
+
private void setCurrentDiff2(Diff diff, boolean reveal) {
if (diff != null && diff.fDirection != Differencer.NO_CHANGE) {
//fCurrentDiff= null;

Back to the top