void () { LOG.assertTrue(myEditor != null); if (myGuttersRaw.isEmpty()) return; myGutters.clear(); Predicate<IntentionAction> filter = action -> ContainerUtil.and( IntentionActionFilter.EXTENSION_POINT_NAME.getExtensionList(), f -> f.accept(action, myFile)); PresentationFactory presentationFactory = new PresentationFactory(); List<AnAction> actions = Utils.expandActionGroup( new DefaultActionGroup(myGuttersRaw), presentationFactory, EditorUtil.getEditorDataContext(myEditor), ActionPlaces.INTENTION_MENU); List<HighlightInfo.IntentionActionDescriptor> descriptors = new ArrayList<>(); int order = 0; for (AnAction action : actions) { Presentation presentation = presentationFactory.getPresentation(action); Icon icon = ObjectUtils.notNull(presentation.getIcon(), EmptyIcon.ICON_16); String text = presentation.getText(); if (StringUtil.isEmpty(text)) continue; IntentionAction intentionAction = new GutterIntentionAction(action, order++, icon, text); if (!filter.test(intentionAction)) continue; HighlightInfo.IntentionActionDescriptor descriptor = new HighlightInfo.IntentionActionDescriptor( intentionAction, Collections.emptyList(), text, icon, null, null, null); descriptors.add(descriptor); } wrapActionsTo(descriptors, myGutters, false); }