[9] Review request for 8031573 [macosx] Checkmarks of JCheckBoxMenuItems aren't rendered in high resolution on Retina

Petr Pchelko petr.pchelko at oracle.com
Mon Feb 24 05:48:17 PST 2014


Hello, Alexander.

The fix looks good to me.

With best regards. Petr.

On 18.02.2014, at 16:20, Sergey Bylokhov <Sergey.Bylokhov at oracle.com> wrote:

> Hi, Alexander.
> The fix looks good then.
> 
> On 17.02.2014 18:38, Alexander Scherbatiy wrote:
>> On 2/14/2014 3:16 PM, Sergey Bylokhov wrote:
>>> On 2/14/14 2:32 PM, Alexander Scherbatiy wrote:
>>>> On 2/14/2014 2:12 AM, Sergey Bylokhov wrote:
>>>>> Hi, Alexander.
>>>>> Did you check option of loading of the picture on demand?Since most of the time x2 version is useless on non hdpi and vice versa.
>>> Yes but in this particular case menu items will be painted in one particular scale only.
>> 
>>   I have created the separate issue on it:  8035069 [macosx] Loading resolution variants by demand
>>     https://bugs.openjdk.java.net/browse/JDK-8035069
>> 
>>  Thanks,
>>  Alexandr.
>>>> It's not quite true.
>>>>    MacOSX choses a necessary image representation based on the current transformations. Setting current transformation to scale 2x leads
>>>>    that the high resolution image is drawn even on non HiDPI display.
>>>> 
>>>>    There is a similar mechanism for the MultiResolution toolkit images. The base image is drawn in case if the high-resolution image has not been loaded yet.
>>>>    It has an issue that if there is no one more repaint event the image with high resolution is not shown.
>>>> 
>>>>   I would suggest to move this topic to a separate issue.
>>>> 
>>>>  Thanks,
>>>>  Alexandr.
>>>> 
>>>>> 
>>>>> On 13.02.2014 18:04, Alexander Scherbatiy wrote:
>>>>>> 
>>>>>> Hello,
>>>>>> 
>>>>>> Could you review the fix:
>>>>>>  bug: https://bugs.openjdk.java.net/browse/JDK-8031573
>>>>>>  webrev: http://cr.openjdk.java.net/~alexsch/8031573/webrev.00
>>>>>> 
>>>>>>  The NSMenu* system icons are templates and do not have image representations.
>>>>>> 
>>>>>>  The fix retrieves images with original and double size from an NSImage and put them to a MultiResolution image.
>>>>>>  The fix also adds sun.awt.image.MultiResolutionBufferedImage class which can be used uniformly for a Multiresolution image creation.
>>>>>> 
>>>>>>  The fix is independent of the fix 8033534 Get MultiResolution image from native system
>>>>>> http://mail.openjdk.java.net/pipermail/awt-dev/2014-February/006991.html 
>>>>>>  because CImage.createImageFromName(imageName) never returns a MultiResolution image for templates.
>>>>>>  But the fix 8033534 can be updated to use the MultiResolutionBufferedImage.
>>>>>> 
>>>>>> Thanks,
>>>>>> Alexandr.
>>>>>> 
>>>>> 
>>>>> 
>>>> 
>>> 
>>> 
>> 
> 
> 
> -- 
> Best regards, Sergey.
> 



More information about the macosx-port-dev mailing list