Skip to content

Commit bb94f85

Browse files
amartya4256fedejeanne
authored andcommitted
Copy rectangles with APIs in DnD
This commit enforces the usage of Rectangle.clone and Rectangle.of while copying a rectangle from an existing rectangle and creating a rectangle from a Point making sure the internal state of the source resources are copied to the new resource. contributes to eclipse-platform/eclipse.platform.swt#62 and eclipse-platform/eclipse.platform.swt#128
1 parent a4840da commit bb94f85

File tree

3 files changed

+10
-6
lines changed

3 files changed

+10
-6
lines changed

bundles/org.eclipse.e4.ui.workbench.addons.swt/META-INF/MANIFEST.MF

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Manifest-Version: 1.0
22
Bundle-ManifestVersion: 2
33
Bundle-SymbolicName: org.eclipse.e4.ui.workbench.addons.swt;singleton:=true
4-
Bundle-Version: 1.5.700.qualifier
4+
Bundle-Version: 1.5.800.qualifier
55
Bundle-Name: %pluginName
66
Bundle-Vendor: %providerName
77
Bundle-Localization: plugin
@@ -12,7 +12,7 @@ Require-Bundle: org.eclipse.e4.ui.model.workbench;bundle-version="1.0.0",
1212
org.eclipse.e4.core.services;bundle-version="0.9.1",
1313
org.eclipse.e4.ui.workbench.renderers.swt;bundle-version="0.9.1",
1414
org.eclipse.e4.ui.widgets;bundle-version="0.11.0",
15-
org.eclipse.swt;bundle-version="[3.7.0,4.0.0)",
15+
org.eclipse.swt;bundle-version="[3.131.0,4.0.0)",
1616
org.eclipse.jface;bundle-version="[3.7.0,4.0.0)",
1717
org.eclipse.core.runtime;bundle-version="[3.29.0,4.0.0)",
1818
org.eclipse.e4.ui.di;bundle-version="0.10.0",

bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/dndaddon/DetachedDropAgent.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,8 +94,9 @@ public Rectangle getRectangle(MUIElement dragElement) {
9494
}
9595

9696
Point cp = Display.getCurrent().getCursorLocation();
97-
curRect.x = cp.x - 15;
98-
curRect.y = cp.y - 15;
97+
cp.x -= 15;
98+
cp.y -= 15;
99+
curRect = Rectangle.of(cp, curRect.width, curRect.height);
99100

100101
return curRect;
101102
}

bundles/org.eclipse.e4.ui.workbench.addons.swt/src/org/eclipse/e4/ui/workbench/addons/dndaddon/DnDManager.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -464,8 +464,11 @@ private Rectangle getOverlayBounds() {
464464
Rectangle bounds = null;
465465
for (Rectangle fr : frames) {
466466
if (fr.width > 6) {
467-
Rectangle outerBounds = new Rectangle(fr.x - 3, fr.y - 3, fr.width + 6,
468-
fr.height + 6);
467+
Rectangle outerBounds = fr.clone();
468+
outerBounds.x -= 3;
469+
outerBounds.y -= 3;
470+
outerBounds.width += 6;
471+
outerBounds.height += 6;
469472
if (bounds == null) {
470473
bounds = outerBounds;
471474
}

0 commit comments

Comments
 (0)