<AWT Dev> Review request: 8005405 : [macosx] Drag and Drop: wrong animation when dropped outside any drop target.

Petr Pchelko petr.pchelko at oracle.com
Thu Jan 24 07:35:44 PST 2013


Hello, AWT Team.

Please, review an updated fix for:
http://bugs.sun.com/view_bug.do?bug_id=8005405
at
http://cr.openjdk.java.net/~pchelko/8005405/webrev.01/

Sergey suggested to simplify the loop which computes the component offset. I simplified it and deleted the check that a peer is an instance of LWComponentPeer because as I understand it is always true for a root component in the hierarchy on the mac.

The updated fix is tested on toy apps and on netbeans.

With best regards, Petr.

On Jan 23, 2013, at 6:35 PM, Petr Pchelko wrote:

> Hello, AWT team.
> 
> Please, review the fix for the issue
> http://bugs.sun.com/view_bug.do?bug_id=8005405
> The fix is available at:
> http://cr.openjdk.java.net/~pchelko/8005405/webrev.00/
> 
> 2 problem existed: 
> 	1. Calculation of the dragOrigin and componentOffset relied on the component.isLightweight() method, which considers all the AWT components heavyweight on Mac, however we really wanted there to find the component which has a real NSView or NSWindow under it. Replacing it with instanceof Window solves the problem.
> 	2. On the native level the dragOrigin and location of the dragEvent were calculated without respect to the fact than Cocoa coordinate system is flipped.
> 
> The fix is tested on toy apps with both AWT and Swing components. Also I have run netbeans on the JDK with this fix and all drag images look good.
> 
> With best regards. Petr.




More information about the awt-dev mailing list