summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSilenio Quarti <silenio_quarti@ca.ibm.com>2012-11-02 18:18:07 -0400
committerSilenio Quarti <silenio_quarti@ca.ibm.com>2012-11-02 18:18:07 -0400
commit16bb60c719726cc5f9c779be5fc7c437a7d8411c (patch)
tree0daac911ffc1863d496ef2c42a3b4bc95c9aa770
parent65c6d780b85871c0cfac3975fce13f0f3df8b482 (diff)
downloadeclipse.platform.swt-16bb60c719726cc5f9c779be5fc7c437a7d8411c.tar.gz
eclipse.platform.swt-16bb60c719726cc5f9c779be5fc7c437a7d8411c.tar.xz
eclipse.platform.swt-16bb60c719726cc5f9c779be5fc7c437a7d8411c.zip
fix overlapping rectangles in Tracker
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tracker.java17
1 files changed, 10 insertions, 7 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tracker.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tracker.java
index 77e1e932d2..a53a97ba18 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tracker.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tracker.java
@@ -321,15 +321,18 @@ void drawRectangles (Rectangle [] rects) {
rect.x = r.x;
rect.y = r.y;
rect.width = r.width;
+ rect.height = 1;
+ OS.gdk_region_union_with_rect(region, rect);
+ rect.width = 1;
rect.height = r.height;
OS.gdk_region_union_with_rect(region, rect);
- rect.x++;
- rect.y++;
- rect.width -= 2;
- rect.height -= 2;
- long /*int*/ rgn = OS.gdk_region_rectangle(rect);
- OS.gdk_region_subtract(region, rgn);
- OS.gdk_region_destroy(rgn);
+ rect.x = r.x + r.width;
+ OS.gdk_region_union_with_rect(region, rect);
+ rect.x = r.x;
+ rect.y = r.y + r.height;
+ rect.width = r.width;
+ rect.height = 1;
+ OS.gdk_region_union_with_rect(region, rect);
}
OS.gtk_widget_shape_combine_region (overlay, region);
OS.gdk_region_destroy (region);