From 366fd4dbbdba4b31b0c5b572edec9482ed3154f1 Mon Sep 17 00:00:00 2001 From: Bawnorton Date: Fri, 27 Sep 2024 12:30:35 -0700 Subject: [PATCH 1/2] fix unused mixin inspection --- src/main/kotlin/platform/mixin/MixinModule.kt | 21 ++++++++++++------- .../platform/mixin/config/MixinConfig.kt | 2 ++ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/main/kotlin/platform/mixin/MixinModule.kt b/src/main/kotlin/platform/mixin/MixinModule.kt index 5deebfbf2..d83a106dc 100644 --- a/src/main/kotlin/platform/mixin/MixinModule.kt +++ b/src/main/kotlin/platform/mixin/MixinModule.kt @@ -31,13 +31,14 @@ import com.demonwav.mcdev.util.nullable import com.intellij.json.psi.JsonFile import com.intellij.json.psi.JsonObject import com.intellij.openapi.fileTypes.FileTypeManager -import com.intellij.openapi.fileTypes.FileTypes import com.intellij.openapi.project.Project import com.intellij.psi.JavaPsiFacade import com.intellij.psi.PsiClass import com.intellij.psi.PsiManager import com.intellij.psi.search.FileTypeIndex import com.intellij.psi.search.GlobalSearchScope +import de.marhali.json5.Json5 +import de.marhali.json5.Json5Options import javax.swing.Icon class MixinModule(facet: MinecraftFacet) : AbstractModule(facet) { @@ -54,19 +55,24 @@ class MixinModule(facet: MinecraftFacet) : AbstractModule(facet) { override val icon: Icon? = null companion object { - private val mixinFileType by lazy { - FileTypeManager.getInstance().findFileTypeByName("Mixin Configuration") ?: FileTypes.UNKNOWN + private val mixinFileTypes by lazy { + listOfNotNull( + FileTypeManager.getInstance().findFileTypeByName("Mixin Json Configuration"), + FileTypeManager.getInstance().findFileTypeByName("Mixin Json5 Configuration") + ) } fun getMixinConfigs( project: Project, scope: GlobalSearchScope, ): Collection { - return FileTypeIndex.getFiles(mixinFileType, scope) - .mapNotNull { - (PsiManager.getInstance(project).findFile(it) as? JsonFile)?.topLevelValue as? JsonObject + return mixinFileTypes + .flatMap { FileTypeIndex.getFiles(it, scope) } + .mapNotNull { file -> + (PsiManager.getInstance(project).findFile(file) as? JsonFile)?.topLevelValue as? JsonObject + }.map { jsonObject -> + MixinConfig(project, jsonObject) } - .map { MixinConfig(project, it) } } fun getAllMixinClasses( @@ -93,3 +99,4 @@ class MixinModule(facet: MinecraftFacet) : AbstractModule(facet) { } } } + diff --git a/src/main/kotlin/platform/mixin/config/MixinConfig.kt b/src/main/kotlin/platform/mixin/config/MixinConfig.kt index bb84274f1..2adda4812 100644 --- a/src/main/kotlin/platform/mixin/config/MixinConfig.kt +++ b/src/main/kotlin/platform/mixin/config/MixinConfig.kt @@ -147,6 +147,8 @@ class MixinConfig(private val project: Project, private var json: JsonObject) { } private fun reformat() { + if(json.containingFile.name.endsWith(".json5")) return + json = CodeStyleManager.getInstance(project).reformat(json) as JsonObject file?.let { file -> val psiFile = PsiManager.getInstance(project).findFile(file) as? JsonFile ?: return From 2824be3e23bbfe60f097ef9762f56421010e1a03 Mon Sep 17 00:00:00 2001 From: Bawnorton Date: Fri, 27 Sep 2024 12:33:33 -0700 Subject: [PATCH 2/2] remove old imports --- src/main/kotlin/platform/mixin/MixinModule.kt | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/main/kotlin/platform/mixin/MixinModule.kt b/src/main/kotlin/platform/mixin/MixinModule.kt index d83a106dc..1ac235176 100644 --- a/src/main/kotlin/platform/mixin/MixinModule.kt +++ b/src/main/kotlin/platform/mixin/MixinModule.kt @@ -37,8 +37,6 @@ import com.intellij.psi.PsiClass import com.intellij.psi.PsiManager import com.intellij.psi.search.FileTypeIndex import com.intellij.psi.search.GlobalSearchScope -import de.marhali.json5.Json5 -import de.marhali.json5.Json5Options import javax.swing.Icon class MixinModule(facet: MinecraftFacet) : AbstractModule(facet) {