From 53698a12302c2b294e6c9208f110b39d15d87916 Mon Sep 17 00:00:00 2001 From: Alexey Pegov Date: Sat, 25 Sep 2010 12:45:52 +0400 Subject: [PATCH] Revert "IDEA-58896 Multi-stroke keys partly broken" This reverts commit 7e6bac9903ab200eb30e600db91bc47290df7314. --- .../com/intellij/openapi/keymap/impl/KeymapImpl.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/KeymapImpl.java b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/KeymapImpl.java index 6e384246fcaf..45a4a680d373 100644 --- a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/KeymapImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/KeymapImpl.java @@ -219,7 +219,7 @@ public class KeymapImpl implements Keymap, ExternalizableScheme { } list.add(shortcut); - if (checkParentShortcut && myParent != null && areShortcutsEqual(getParentShortcuts(actionId), list.toArray(new Shortcut[list.size()]))) { + if (checkParentShortcut && myParent != null && areShortcutsEqual(getParentShortcuts(actionId), getShortcuts(actionId))) { myActionId2ListOfShortcuts.remove(actionId); } myKeystroke2ListOfIds = null; @@ -494,6 +494,11 @@ public class KeymapImpl implements Keymap, ExternalizableScheme { } public Shortcut[] getShortcuts(String actionId) { + KeymapManagerEx keymapManager = getKeymapManager(); + if (keymapManager.getBoundActions().contains(actionId)) { + return getShortcuts(keymapManager.getActionBinding(actionId)); + } + LinkedHashSet shortcuts = myActionId2ListOfShortcuts.get(actionId); if (shortcuts == null) { @@ -501,11 +506,6 @@ public class KeymapImpl implements Keymap, ExternalizableScheme { return getParentShortcuts(actionId); } else { - KeymapManagerEx keymapManager = getKeymapManager(); - if (keymapManager.getBoundActions().contains(actionId)) { - return getShortcuts(keymapManager.getActionBinding(actionId)); - } - return ourEmptyShortcutsArray; } }