Integrated: 8181084: JavaFX show big icons in system menu on macOS with Retina display

Paul duke at openjdk.org
Wed Aug 17 18:54:23 UTC 2022


On Sun, 27 Feb 2022 11:42:58 GMT, Paul <duke at openjdk.org> wrote:

> I hit on JDK-8181084 while making some changes to Scene Builder, so I decided to investigate.
> 
> Please note: I have not done any Objective-C or MacOS development before. So I would really like some feedback from someone else who knows this stuff better.
> 
> Anyway, after some googling, I discovered that MacOS uses points values for measurements and not pixels, so the actual fix for this issue was this block in `GlassMenu.m`:-
> 
> 
>             if ((sx > 1) && (sy > 1) && (width > 1) && (height > 1)) {
>                 NSSize imgSize = {width / sx, height / sy};
>                 [image setSize: imgSize];
>             }
> 
> 
> The rest of the changes were needed in order to get the `scaleX` and `scaleY` values down from `PixelUtils.java` into `GlassMenu.m`.
> 
> Before this fix:-
> 
> <img width="239" alt="Screenshot 2022-02-26 at 22 16 30" src="https://user-images.githubusercontent.com/437990/155880981-92163087-696b-4442-b047-845c276deb27.png">
> 
> After this fix:-
> 
> <img width="218" alt="Screenshot 2022-02-26 at 22 18 17" src="https://user-images.githubusercontent.com/437990/155880985-6bff0a06-9aee-4db2-b696-64730b0a6feb.png">

This pull request has now been integrated.

Changeset: 2618bf8a
Author:    Paul Court <emails at paulcourt.co.uk>
Committer: Kevin Rushforth <kcr at openjdk.org>
URL:       https://git.openjdk.org/jfx/commit/2618bf8aeef3c9d9d923576e8a610f5e9b2123f1
Stats:     103 lines in 14 files changed: 97 ins; 3 del; 3 mod

8181084: JavaFX show big icons in system menu on macOS with Retina display

Reviewed-by: jpereda, kcr

-------------

PR: https://git.openjdk.org/jfx/pull/743


More information about the openjfx-dev mailing list