void (@NotNull AnActionEvent e) { Map<C, IdeaPluginDescriptorImpl> selection = getSelection(); if (!askToUninstall(getUninstallAllMessage(selection.values()), myUiParent)) { return; } ApplicationInfoEx applicationInfo = ApplicationInfoEx.getInstanceEx(); for (Map.Entry<C, IdeaPluginDescriptorImpl> entry : selection.entrySet()) { IdeaPluginDescriptorImpl descriptor = entry.getValue(); List<IdeaPluginDescriptorImpl> dependents = MyPluginModel.getDependents(descriptor, applicationInfo, PluginManagerCore.INSTANCE.buildPluginIdMap()); if (dependents.isEmpty() || askToUninstall(getUninstallDependentsMessage(descriptor, dependents), entry.getKey())) { myPluginModel.uninstallAndUpdateUi(descriptor); } } myOnFinishAction.run(); }