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 8f06f1739ebc..737e028fa0ae 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 @@ -807,17 +807,11 @@ public class KeymapImpl extends ExternalizableSchemeAdapter implements Keymap { @Override public String[] getActionIds() { - ArrayList ids = new ArrayList(); + Set ids = ContainerUtil.newLinkedHashSet(); if (myParent != null) { - String[] parentIds = getParentActionIds(); - ContainerUtil.addAll(ids, parentIds); - } - String[] ownActionIds = getOwnActionIds(); - for (String id : ownActionIds) { - if (!ids.contains(id)) { - ids.add(id); - } + ContainerUtil.addAll(ids, getParentActionIds()); } + Collections.addAll(ids, getOwnActionIds()); return ArrayUtil.toStringArray(ids); }