The fix looks good to me.

Thanks,
Alexandr.

On 3/17/2017 8:19 AM, Sergey Bylokhov wrote:
No issues in the awt tests, but I decide to update the fix in place.
http://cr.openjdk.java.net/~serb/8160270/webrev.00/src/java.desktop/unix/classes/sun/awt/X11/XBaseMenuWindow.java.sdiff.html <http://cr.openjdk.java.net/%7Eserb/8160270/webrev.00/src/java.desktop/unix/classes/sun/awt/X11/XBaseMenuWindow.java.sdiff.html> One line was added to check that we access the native peers only for HW components.
657 GraphicsConfiguration getCurrentGraphicsConfiguration() {
+658 Component hw = SunToolkit.getHeavyweightComponent(target);
659 XWindow peer = AWTAccessor.getComponentAccessor().getPeer(hw);
660 if (peer != null && peer.graphicsConfig != null) {
661 return peer.graphicsConfig;
662 }
663 return graphicsConfig;
664 }
If there are no objections I’ll push this version.

:

It all looks plausible .. so +1 assuming no problems with the tests.

-phil.

On 03/16/2017 12:20 PM, Alexandr Scherbatiy wrote:

The fix looks good to me.

Thanks,
Alexandr.

On 3/16/2017 7:44 PM, Sergey Bylokhov wrote:
Hello,
Please review the fix for jdk9.

This bug was caused by the change in JDK8137571 where we started to use graphic configuration for each component to calculate the preferred size on the screen. The problem is that in the code we had a few assumptions that the left-top corner of the screen is 0.0. Moreover for the Menu we do not update the GC when the window is moved to another screen(I’ll file a separate bug for this).

Fix description:
- Menu components now tries to take the graphics configuration from the frame. - All calculations are updated to take into account that the left-top corner is screenBounds.x/y. - The choice component now updates the GC of its popup when its own gc is updated.
- I intentionally do not reformat the change to simplify review.

I have started the jck/jtreg tests, they are still in progress I'll notify if some new issues will be found.

Bug: https://bugs.openjdk.java.net/browse/JDK-8160270
Webrev can be found at: http://cr.openjdk.java.net/~serb/8160270/webrev.00 <http://cr.openjdk.java.net/%7Eserb/8160270/webrev.00>





Reply via email to