Hello All,
Gentle reminder. Please review the updated webrev. http://cr.openjdk.java.net/~rchamyal/8147648/webrev.02/ Update: simplified the test. Regards, Rajeev Chamyal From: Alexandr Scherbatiy Sent: 22 June 2016 15:46 To: Rajeev Chamyal; Sergey Bylokhov; HYPERLINK "mailto:swing-dev@openjdk.java.net"swing-dev@openjdk.java.net Subject: Re: <Swing Dev>[9] Review Request JDK-8147648 [hidpi] multiresolution image: wrong resolution variant is used as icon in the Unity panel The fix looks good to me. Thanks, Alexandr. On 6/22/2016 10:49 AM, Rajeev Chamyal wrote: Hello Alexandr, Thanks for the review. I have updated webrev as per comments. http://cr.openjdk.java.net/~rchamyal/8147648/webrev.01/ Regards, Rajeev Chamyal From: Alexandr Scherbatiy Sent: 21 June 2016 17:37 To: Rajeev Chamyal; Sergey Bylokhov; HYPERLINK "mailto:swing-dev@openjdk.java.net"swing-dev@openjdk.java.net Subject: Re: <Swing Dev>[9] Review Request JDK-8147648 [hidpi] multiresolution image: wrong resolution variant is used as icon in the Unity panel On 6/21/2016 12:16 PM, Rajeev Chamyal wrote: Hello All, Please review the following webrev. Webrev: HYPERLINK "http://cr.openjdk.java.net/%7Erchamyal/8147648/webrev.00/"http://cr.openjdk.java.net/~rchamyal/8147648/webrev.00/ Bug: https://bugs.openjdk.java.net/browse/JDK-8147648 Issue: Wrong resolution variant is used as icon in the Unity panel. Cause: The screen transforms are not applied to find the correct resolution variant image in current implementation. Fix: Applied the screen transforms to graphics object. 222 int scaleX = (int)tx.getScaleX(); 223 int scaleY = (int)tx.getScaleY(); 224 DataBufferInt buffer = new DataBufferInt(scaleX * width * scaleY * height); The fix is in the shared code and the scale factor can have floating point value on Windows. (for example 1.5). It is better to round the final width and height after scaling them. Thanks, Alexandr. Regards, Rajeev Chamyal