Bugfix: support several resource directories in AndroidPsiTreeChangePreprocessor

This commit is contained in:
Yan Zhulanow
2015-04-15 17:50:43 +03:00
parent 77be78b627
commit fdc253b67f
2 changed files with 6 additions and 4 deletions
@@ -16,7 +16,9 @@
package org.jetbrains.kotlin.lang.resolve.android package org.jetbrains.kotlin.lang.resolve.android
public data class AndroidModuleInfo(val applicationPackage: String, val resDirectories: List<String>) public data class AndroidModuleInfo(val applicationPackage: String, resDirectories: List<String>) {
val resDirectories = resDirectories.sort()
}
public abstract class AndroidResource(val id: String) { public abstract class AndroidResource(val id: String) {
public abstract val className: String public abstract val className: String
@@ -48,11 +48,11 @@ public class AndroidPsiTreeChangePreprocessor : PsiTreeChangePreprocessor, Simpl
val module = projectFileIndex.getModuleForFile(file.getVirtualFile()) val module = projectFileIndex.getModuleForFile(file.getVirtualFile())
if (module != null) { if (module != null) {
val resourceManager = AndroidResourceManager.getInstance(module) val resourceManager = AndroidResourceManager.getInstance(module)
val mainResDirectory = resourceManager.getResDirectories() val resDirectories = resourceManager.getModuleResDirectories()
val baseDirectory = file.getParent()?.getParent()?.getVirtualFile() val baseDirectory = file.getParent()?.getParent()?.getVirtualFile()
//File from res/ directory was modified // File from the res/ directory was modified
if (mainResDirectory == baseDirectory && file.isLayoutXmlFile()) { if (baseDirectory in resDirectories && file.isLayoutXmlFile()) {
incModificationCount() incModificationCount()
} }
} }