On Tue, 31 Oct 2023 08:05:56 GMT, vlaaad <d...@openjdk.org> wrote:

>> This PR addresses [JDK-8284445](https://bugs.openjdk.org/browse/JDK-8284445).
>> 
>> Context: the warning might be more important than it seems. Our JavaFX-based 
>> desktop app has [an issue](https://github.com/defold/defold/issues/7845) — 
>> when the user opens 2 instances of the app, one of the instances hangs after 
>> a while. While debugging the issue, I found that it's somehow related to the 
>> system menu bar — not refreshing it fixes the issue. Further investigations 
>> revealed that the app hangs only if we show menus that use F1-F24 shortcuts. 
>> This reminded me of the warnings we get about `NSEventModifierFlagFunction 
>> specified to -setKeyEquivalentModifierMask` for such shortcuts. I 
>> experimented with removing the modifier for these shortcuts, and it helped 
>> with our issue!
>
> vlaaad has updated the pull request incrementally with one additional commit 
> since the last revision:
> 
>   Don't use NSFunctionKeyMask as modifier at all

The MODIFIER_FUNCTION constant is poorly named and in the wrong place since it 
has nothing to do with key events. There is no Function modifier in Java. The 
Mac glass code sets this flag on certain key events but Java just ignores it.

The only use for this flag is setting up the system menu bar. We don't have an 
existing test to verify that the system menu bar processes key events correctly 
(that would require a Robot and I don't see any Robot tests for this). I will 
enter a follow-up bug to fix that testing gap. For now I think it's enough that 
the warning is gone.

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

PR Comment: https://git.openjdk.org/jfx/pull/1252#issuecomment-1791016957

Reply via email to