On Sat, 23 Jul 2022 07:51:05 GMT, Paul <d...@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";>
>
> 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 seven additional commits since 
> the last revision:
> 
>  - Merge branch 'master' into JDK-8181084
>  - 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

Hello again, been too busy with work for the last few months, but I'm hoping to 
push this over the line for JFX 20.

I've published my test app over at:- 
https://github.com/gargoyle/reimagined-octo-succotash with some instructions, 
and it all seems to work fine on my Linux desktop.

However, I cannot get JFX to build on my cleanly re-installed Mac running Big 
Sur (11.6.7) and `openjdk 18.0.2`, so I've hit a bit of a wall. :-(

The error is in building `ccMacGlass` and seems to be complaining about methods 
not returning `NSString`.

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

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

Reply via email to