boolean (@NotNull Module module, @NotNull VirtualFile directoryFile, @NotNull ProjectFileIndex fileIndex) { if (canRealModuleNameBeHidden()) return true; String moduleName = module.getName(); String directoryName = directoryFile.getName(); if (moduleName.equalsIgnoreCase(directoryName)) { return true; } if (ModuleGrouperKt.isQualifiedModuleNamesEnabled(module.getProject()) && StringUtil.endsWithIgnoreCase(moduleName, directoryName)) { int parentPrefixLength = moduleName.length() - directoryName.length() - 1; if (parentPrefixLength > 0 && moduleName.charAt(parentPrefixLength) == '.') { VirtualFile parentDirectory = directoryFile.getParent(); if (ProjectRootsUtil.isModuleContentRoot(parentDirectory, module.getProject())) { Module parentModule = fileIndex.getModuleForFile(parentDirectory); if (parentModule != null && parentModule.getName().length() == parentPrefixLength && moduleName.startsWith(parentModule.getName())) { return true; } } } } return false; }