RFR: 8181084: JavaFX show big icons in system menu on macOS with Retina display [v4]
Paul
duke at openjdk.java.net
Tue May 17 07:28:39 UTC 2022
> 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">
Paul has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains six additional commits since the last revision:
- Merge branch 'master' into JDK-8181084
- Updated variable names to be a bit more consistent
- Merge branch 'master' into JDK-8181084
- Merge branch 'master' into JDK-8181084
- Removing trailing whitespace.
- Correctly scales hi-res icons in MacOS system menu items
-------------
Changes:
- all: https://git.openjdk.java.net/jfx/pull/743/files
- new: https://git.openjdk.java.net/jfx/pull/743/files/bb6d34fe..e1d2885d
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jfx&pr=743&range=03
- incr: https://webrevs.openjdk.java.net/?repo=jfx&pr=743&range=02-03
Stats: 5600 lines in 7 files changed: 5583 ins; 3 del; 14 mod
Patch: https://git.openjdk.java.net/jfx/pull/743.diff
Fetch: git fetch https://git.openjdk.java.net/jfx pull/743/head:pull/743
PR: https://git.openjdk.java.net/jfx/pull/743
More information about the openjfx-dev
mailing list