summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarolyn MacLeod <carolyn>2009-05-20 18:08:39 +0000
committerCarolyn MacLeod <carolyn>2009-05-20 18:08:39 +0000
commit14622e43039935ea0357eba84c48ea5d685524a4 (patch)
tree9b0e59ddeff61c74b9cb0ec8d85750d6e2b85234
parent69f1d6e1118f73bdbcd99f68ccdacdb8645e32ea (diff)
downloadeclipse.platform.swt-14622e43039935ea0357eba84c48ea5d685524a4.tar.gz
eclipse.platform.swt-14622e43039935ea0357eba84c48ea5d685524a4.tar.xz
eclipse.platform.swt-14622e43039935ea0357eba84c48ea5d685524a4.zip
274925 - Drag view shows outline in wrong location with multiple monitors
-rwxr-xr-xbundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Tracker.java8
1 files changed, 2 insertions, 6 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Tracker.java b/bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Tracker.java
index 86215f8953..f365f683cc 100755
--- a/bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Tracker.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Tracker.java
@@ -352,11 +352,7 @@ void drawRectangles (NSWindow window, Rectangle [] rects, boolean erase) {
NSGraphicsContext context = window.graphicsContext();
NSGraphicsContext.static_saveGraphicsState();
NSGraphicsContext.setCurrentContext(context);
- NSAffineTransform transform = NSAffineTransform.transform();
context.saveGraphicsState();
- transform.scaleXBy(1, -1);
- transform.translateXBy(0, -display.getPrimaryFrame().height);
- transform.concat();
Point parentOrigin;
if (parent != null) {
parentOrigin = display.map (parent, null, 0, 0);
@@ -366,11 +362,11 @@ void drawRectangles (NSWindow window, Rectangle [] rects, boolean erase) {
context.setCompositingOperation(erase ? OS.NSCompositeClear : OS.NSCompositeSourceOver);
NSRect rectFrame = new NSRect();
NSPoint globalPoint = new NSPoint();
-
+ float /*double*/ screenHeight = display.getPrimaryFrame().height;
for (int i=0; i<rects.length; i++) {
Rectangle rect = rects [i];
rectFrame.x = rect.x + parentOrigin.x;
- rectFrame.y = rect.y + parentOrigin.y;
+ rectFrame.y = screenHeight - (int)((rect.y + parentOrigin.y) + rect.height);
rectFrame.width = rect.width;
rectFrame.height = rect.height;
globalPoint.x = rectFrame.x;