Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndre Weinand2002-11-04 21:33:35 +0000
committerAndre Weinand2002-11-04 21:33:35 +0000
commite856da959ae31eccc1917be06749e05887f5fb55 (patch)
tree0f68aa879d766692304f2371702d021404216733
parent05ca412e1db78c74900782bcae5d35fb261d90e1 (diff)
downloadeclipse.platform.swt-e856da959ae31eccc1917be06749e05887f5fb55.tar.gz
eclipse.platform.swt-e856da959ae31eccc1917be06749e05887f5fb55.tar.xz
eclipse.platform.swt-e856da959ae31eccc1917be06749e05887f5fb55.zip
Workaround for repaint problem in compositting mode
(checked in from Naples, Italy :-)
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Composite.java14
1 files changed, 14 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Composite.java b/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Composite.java
index 48a931bdfa..a6f8afd503 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Composite.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Composite.java
@@ -358,6 +358,20 @@ public Control [] getTabList () {
return tabList;
}
+void handleResize(int handle, Rect bounds) {
+ super.handleResize(handle, bounds);
+
+ /*
+ * Bug in compositing mode: after a resize some children of a Composite
+ * are not redrawn properly. The fix is to make the composite temporarily
+ * one pixel larger and thereby forcing a relayout.
+ */
+ bounds.right--;
+ OS.SetControlBounds(handle, bounds);
+ bounds.right++;
+ OS.SetControlBounds(handle, bounds);
+}
+
void hookEvents () {
super.hookEvents ();
if ((state & CANVAS) != 0) {

Back to the top