From b9edab36cbef7aae1ac4287febbf49b2be2f1c1e Mon Sep 17 00:00:00 2001 From: Denis Fokin Date: Tue, 29 Mar 2016 16:19:23 +0300 Subject: [PATCH] IDEA-153790 Cannot use function key combos on Macbook (e.g. in Keymap) --- .../openapi/keymap/impl/ui/ShortcutTextField.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/ShortcutTextField.java b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/ShortcutTextField.java index 685b168d9773..faf1dbc7e431 100644 --- a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/ShortcutTextField.java +++ b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/ShortcutTextField.java @@ -45,6 +45,14 @@ public final class ShortcutTextField extends JTextField { }); } + private static boolean absolutelyUnknownKey (KeyEvent e) { + return e.getKeyCode() == 0 + && e.getExtendedKeyCode() == 0 + && e.getKeyChar() == KeyEvent.CHAR_UNDEFINED + && e.getKeyLocation() == KeyEvent.KEY_LOCATION_UNKNOWN + && e.getExtendedKeyCode() == 0; + } + protected void processKeyEvent(KeyEvent e) { if (e.getID() == KeyEvent.KEY_PRESSED) { int keyCode = e.getKeyCode(); @@ -53,7 +61,8 @@ public final class ShortcutTextField extends JTextField { keyCode == KeyEvent.VK_ALT || keyCode == KeyEvent.VK_CONTROL || keyCode == KeyEvent.VK_ALT_GRAPH || - keyCode == KeyEvent.VK_META + keyCode == KeyEvent.VK_META || + absolutelyUnknownKey(e) ){ return; }