Skip to content

[OS X] Retina display support (NSHighResolutionCapable and image@2x) #2309

Closed
@jacobseptember

Description

@jacobseptember

Crossposting here and at the Google Groups page; it's not clear which one is more active.

There are two issues regarding Retina support: Text/buttons/UI in general, and high-quality images.

The "simple" text/buttons/etc issue can be addressed by adding the following to Info.plist:
<key>NSHighResolutionCapable</key> <true/>
This was apparently done with this commit in August 2012, but the version of 1.5.7 that I downloaded in August 2014 did not have this key in its Info.plist.

The images issue is a bit more complicated. I'm used to working with iOS, in which the OS will generally accept either image.png or image@2x.png (the high-resolution version). This is apparently not the case with OS X; when I try to use an image I created for the little down-triangle in the top right of the IDE, it doesn't show up at all if the filename includes the "@2x" and shows up twice as large as should be if the filename doesn't include the "@2x".
The fix here is more involved, but shouldn't be too difficult (I think). First, high-def images need to be created for the eleven images in Arduino.app/Contents/Java/lib/theme. Then, the source code needs to be modified to look for the "@2x" images as well as the regular ones, and take the correct one. I don't know exactly how this is done, and I suspect it will be more involved in Java than Obj-C. Sorry.

SEE ALSO: Google Code issue 982, Github issue 982, Github issue 2204, Google Code issue 1140

tab-unsel-menu
tab-unsel-menu@2x

Metadata

Metadata

Assignees

No one assigned

    Labels

    Component: IDE user interfaceThe Arduino IDE's user interfaceOS: OSXSpecific to the Mac OS X (macOS) version of the Arduino IDEfeature requestA request to make an enhancement (not a bug fix)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions