@NotNull @Override public ThreeState shouldSkipAutopopup( @NotNull PsiElement contextElement, @NotNull PsiFile psiFile, int offset) { if (PsiUtil.isLeafElementOfType(contextElement, TokenSets.STRING_LITERALS)) { @SuppressWarnings("ConstantConditions") PsiElement parent = contextElement.getParent(); if (parent != null) { for (PsiReference reference : parent.getReferences()) { if (!reference.isSoft() && reference .getRangeInElement() .shiftRight(parent.getTextOffset()) .containsOffset(offset)) { return ThreeState.NO; } } } return ThreeState.YES; } return ThreeState.UNSURE; }