Lines 74 to 82 explains why we need to ignore this call. This method should be 
ignored if it is called as a result of user pressing  a shortcut and the window 
containing the menu is not minimized.

Regards,
Manajit


> On 12-Mar-2019, at 3:16 PM, Krishna Addepalli <krishna.addepa...@oracle.com> 
> wrote:
> 
> Hi Manajit,
> 
> Thanks for the clarification. I think you should add some more comments 
> around the statement at line86, to explain in more detail, about why to 
> ignore this call.
> 
> Thanks,
> Krishna
> 
>> On 11-Mar-2019, at 2:25 PM, Manajit Halder <manajit.hal...@oracle.com 
>> <mailto:manajit.hal...@oracle.com>> wrote:
>> 
>> Hi Krishna,
>> 
>> Thanks for the review comment. 
>> 
>> The key mapping is done by method setKeyEquivalent on fMenuItem (object of 
>> the NSMenuItem) in the same file.
>> 
>> As discussed with you, the second key event is the problem here, and is 
>> caused only when System property “apple.laf.useScreenMenuBar” is set to 
>> true. The extra event is generated in the handleAction method and my 
>> proposed fix is solving this issue. The difference with other look and feel 
>> setting or when “apple.laf.useScreenMenuBar” is set to “false” is that 
>> handleAction method is not called. I have verified and found that the 
>> META_MASK and CTRL_MASK are only set when “apple.laf.useScreenMenuBar” is 
>> set to true and not in case of it is false. Also verified with “metal” look 
>> and feel and found the MASKS are not set and handleAction method is not 
>> called and hence the extra key event is not generated.
>> 
>> Please let me know if you have any other query.
>> 
>> Regards,
>> Manajit
>> 
>> 
>> 
>>> On 05-Mar-2019, at 4:52 PM, Krishna Addepalli <krishna.addepa...@oracle.com 
>>> <mailto:krishna.addepa...@oracle.com>> wrote:
>>> 
>>> Hi Manajit,
>>> 
>>> Per our discussion, The cause of the problem is : 1), Key Event being sent 
>>> from the OS to the application - which the Java layer processes it correctly
>>> 2) The Mac OS calling the handleAction function directly on the NSMenutItem 
>>> - although as per your description, there is no code which maps the hot key 
>>> to this widget in the native layer.
>>> Ideally, since the OS is recognising the key combination, that key event 
>>> should not be delivered again to the application. Or, it should be that the 
>>> key event is not recognised and hence delivered to the application.
>>> 
>>> Can you check why in this case, we are getting the key event as well as the 
>>> handleAction from the OS?
>>> 
>>> Thanks,
>>> Krishna
>>> 
>>>> On 23-Feb-2019, at 9:14 PM, Manajit Halder <manajit.hal...@oracle.com 
>>>> <mailto:manajit.hal...@oracle.com>> wrote:
>>>> 
>>>> Hi All,
>>>> 
>>>> Please review the fix for JDK13.
>>>> 
>>>> Bug:
>>>> https://bugs.openjdk.java.net/browse/JDK-8216971 
>>>> <https://bugs.openjdk.java.net/browse/JDK-8216971>
>>>> 
>>>> Webrev:
>>>> http://cr.openjdk.java.net/~mhalder/8216971/webrev.00/ 
>>>> <http://cr.openjdk.java.net/~mhalder/8216971/webrev.00/>
>>>> 
>>>> Fix:
>>>> actionPerformed() was called twice due to wrong handling of key down event 
>>>> in method handleAction, which is corrected with this fix. 
>>>> This change was added during fix of issue JDK-8152492. Apart from the 
>>>> changes required to fix the problem, code related to finding out 
>>>> eventKey is removed as eventKey is no more used now. 
>>>> 
>>>> Note:
>>>> This issue is regression of bug 8152492, which was introduced in JDK 
>>>> release 9b120.
>>>> 
>>>> Regards,
>>>> Manajit
>>> 
>> 
> 

Reply via email to