Fix "unresolved widget fqname" bug in Gradle
This commit is contained in:
+7
-1
@@ -25,8 +25,8 @@ import com.intellij.psi.util.CachedValueProvider.Result
|
||||
import org.jetbrains.kotlin.android.synthetic.AndroidConst
|
||||
import org.jetbrains.kotlin.android.synthetic.idea.AndroidPsiTreeChangePreprocessor
|
||||
import org.jetbrains.kotlin.android.synthetic.idea.AndroidXmlVisitor
|
||||
import org.jetbrains.kotlin.android.synthetic.parseAndroidResource
|
||||
import org.jetbrains.kotlin.android.synthetic.res.AndroidResource
|
||||
import org.jetbrains.kotlin.android.synthetic.res.AndroidWidget
|
||||
import org.jetbrains.kotlin.android.synthetic.res.SyntheticFileGenerator
|
||||
import org.jetbrains.kotlin.psi.JetFile
|
||||
|
||||
@@ -62,6 +62,12 @@ class IDESyntheticFileGenerator(val module: Module) : SyntheticFileGenerator(mod
|
||||
return filterDuplicates(widgets)
|
||||
}
|
||||
|
||||
override fun parseAndroidWidget(id: String, tag: String, fqNameResolver: (String) -> String?): AndroidResource {
|
||||
val fqName = fqNameResolver(tag)
|
||||
val invalidType = if (fqName != null) null else tag
|
||||
return AndroidWidget(id, fqName ?: AndroidConst.VIEW_FQNAME, invalidType)
|
||||
}
|
||||
|
||||
override fun checkIfClassExist(fqName: String): Boolean {
|
||||
val moduleScope = module.getModuleWithDependenciesAndLibrariesScope(false)
|
||||
return JavaPsiFacade.getInstance(module.project).findClass(fqName, moduleScope) != null
|
||||
|
||||
Reference in New Issue
Block a user