@Override
  public @NotNull Result checkAutoPopup(final char charTyped,
                                        final @NotNull Project project,
                                        final @NotNull Editor editor,
                                        final @NotNull PsiFile file) {
    final boolean isXmlLikeFile = XmlGtTypedHandler.fileContainsXmlLanguage(file);
    boolean spaceInTag = isXmlLikeFile && charTyped == ' ';

    if (spaceInTag) {
      spaceInTag = false;
      final PsiElement at = file.findElementAt(editor.getCaretModel().getOffset());

      if (at != null) {
        final PsiElement parent = at.getParent();
        if (parent instanceof XmlTag) {
          spaceInTag = true;
        }
      }
    }

    if ((charTyped == '<' || charTyped == '{' || charTyped == '/' || spaceInTag) && isXmlLikeFile) {
      autoPopupXmlLookup(project, editor);
      return Result.STOP;
    }
    return Result.CONTINUE;
  }
@Override
  public @NotNull Result checkAutoPopup(final char charTyped,
                                        final @NotNull Project project,
                                        final @NotNull Editor editor,
                                        final @NotNull PsiFile file)