<AWT Dev> [10] Review Request: 8186559 [macos] the screen location is wrong when using AWT/SWT bridge with dual monitors

Sergey Bylokhov Sergey.Bylokhov at oracle.com
Mon Sep 18 22:04:17 UTC 2017

On 9/18/17 09:53, Semyon Sadetsky wrote:
> On 09/15/2017 02:29 PM, Sergey Bylokhov wrote:
>> It is broken from the moment when it was implemented(I have rechecked 
>> on 8u121 which was mentioned in the report), unlike Apple jdk where it 
>> worked.
> Then probably the regression label need to be removed from the bug?

The labels is removed.

> Should the main screen also fixed in other places, for example, in 
> CTrayIcon.m line 137 ?

Yes, it can be changed as well:

but unfortunately it will not work properly even after this,
the new issues created https://bugs.openjdk.java.net/browse/JDK-8187639

The last usage in getTopmostWindowUnderMouseIDImpl seems correct.

>> On 9/15/17 08:55, Semyon Sadetsky wrote:
>>> Hi Sergey,
>>> what was caused the regression?
>>> --Semyon
>>> On 9/14/2017 3:46 PM, Sergey Bylokhov wrote:
>>>> Hello,
>>>> Please review the fix for jdk10.
>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8186559
>>>> Webrev can be found at: 
>>>> http://cr.openjdk.java.net/~serb/8186559/webrev.00
>>>> When our NSView is embedded in native to the SWT-based NSWindow we 
>>>> incorrectly fetch the location of the NSView. The reason is that we 
>>>> use wrong screen when we flip the location. Currently we use 
>>>> [mainScreen] - which "returns the screen object containing the 
>>>> window with the keyboard focus", but we need the first screen which 
>>>> contains 0,0 coordinates.
>>>> In the fix the utility method is reused which internally uses
>>>> [[NSScreen screens] objectAtIndex:0]

Best regards, Sergey.

More information about the awt-dev mailing list