RFR: 8181084: JavaFX show big icons in system menu on macOS with Retina display [v2]
Paul
duke at openjdk.java.net
Sun May 8 06:31:52 UTC 2022
On Sat, 2 Apr 2022 10:23:23 GMT, Paul <duke at openjdk.java.net> 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">
>
> 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 three additional commits since the last revision:
>
> - Merge branch 'master' into JDK-8181084
> - Removing trailing whitespace.
> - Correctly scales hi-res icons in MacOS system menu items
Made a minor change to some variable names to be more consistent with how those values are referenced elsewhere and pulled in the latest upstream changes.
Can anyone help me out with pushing this little tweak over the finishing line?
-------------
PR: https://git.openjdk.java.net/jfx/pull/743
More information about the openjfx-dev
mailing list