> On Jul 8, 2014, at 3:19 AM, Petr Pchelko <[email protected]> wrote: > > Hello, AWT Team. > > Please review the fix for the issue: > https://bugs.openjdk.java.net/browse/JDK-8035568 > The fix is available at: > http://cr.openjdk.java.net/~pchelko/9/8035568/webrev.00/ > > We are using 2 different methods for getting a cursor position in Robot and > in LWAWT. I've changed our implementation to use Carbon method. > nativeGetCursorPosition is a very hot method and changing it's implementation > makes it run 35 times faster. Also we will never deadlock on it any more. > However, I needed to change the isWindowUnderMouse implementation. The > problem's that LWWindowPeer.windowUnderCursor is updated on mouse events > and generated mouse events, so sometimes it may be not updated when called > from a component resize handler. Luckily we can test it using native code. > isWindowUnderMouse is not a hot method at all, in real apps it's called very > rarely (never called after a couple of hours of real IDE usage) so it's not a > problem that it > runs slower now. > > I've run all cursor/mouse tests. A couple of tests failed because they didn't > have proper synchronization and we are too fast for them now. I've fixed it > and open-sourced the tests. > > With best regards. Petr.
Has this change been tested on Retina? I don't see any effort to convert in and out of the screen coordinate system. Regards, Mike Swingler Apple Inc.
