boolean (@NotNull AnActionEvent e) { final List<PyDebugValue> values = getSelectedValues(e); if (values.isEmpty()) return false; if (values.size() == 1) { PyNodeRenderer renderer = values.get(0).getDescriptor().getRenderer(); return renderer == null ? myPyNodeRenderer instanceof DecimalRenderer : renderer == myPyNodeRenderer; } boolean allRenderersAreTheSame = values.stream().map(value -> value.getDescriptor().getRenderer()).distinct().count() == 1; if (allRenderersAreTheSame) { if (values.get(0).getDescriptor().getRenderer() == myPyNodeRenderer || (values.get(0).getDescriptor().getRenderer() == null && myPyNodeRenderer instanceof DecimalRenderer)) return true; } return false; }