diff --git a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/ActionsTreeUtil.java b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/ActionsTreeUtil.java index 8b296b22a868..32aa38c8e74b 100644 --- a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/ActionsTreeUtil.java +++ b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/ActionsTreeUtil.java @@ -507,6 +507,8 @@ public class ActionsTreeUtil { return action -> { if (filter == null) return true; if (action == null) return false; + action = tryUnstubAction(action); + final String insensitiveFilter = filter.toLowerCase(); ArrayList options = new ArrayList<>(); options.add(action.getTemplatePresentation().getText()); @@ -597,4 +599,13 @@ public class ActionsTreeUtil { ? ((DefaultActionGroup)group).getChildActionsOrStubs() : group.getChildren(null); } + + @NotNull + private static AnAction tryUnstubAction(@NotNull AnAction action) { + if (action instanceof ActionStub) { + AnAction newAction = ActionManager.getInstance().getActionOrStub(((ActionStub)action).getId()); + if (newAction != null) return newAction; + } + return action; + } }