<AWT Dev> [9] Review request for 8031573 [macosx] Checkmarks of JCheckBoxMenuItems aren't rendered in high resolution on Retina
Sergey Bylokhov
Sergey.Bylokhov at oracle.com
Tue Feb 18 04:20:45 PST 2014
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 awt-dev
mailing list