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> 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