Codebase update
This commit is contained in:
+3
-3
@@ -21,18 +21,18 @@ import com.intellij.psi.PsiElement
|
||||
import com.intellij.usageView.UsageInfo
|
||||
import com.intellij.util.Processor
|
||||
import com.intellij.find.findUsages.FindUsagesOptions
|
||||
import org.jetbrains.jet.lang.psi.JetNamedDeclaration
|
||||
import com.intellij.openapi.actionSystem.DataContext
|
||||
import org.jetbrains.jet.lang.resolve.android.isAndroidSyntheticElement
|
||||
import com.intellij.openapi.components.ServiceManager
|
||||
import org.jetbrains.jet.lang.resolve.android.AndroidUIXmlProcessor
|
||||
import com.intellij.psi.xml.XmlAttribute
|
||||
import org.jetbrains.jet.lang.psi.JetProperty
|
||||
import org.jetbrains.android.util.AndroidResourceUtil
|
||||
import java.util.ArrayList
|
||||
import com.intellij.find.findUsages.JavaVariableFindUsagesOptions
|
||||
import org.jetbrains.jet.plugin.findUsages.handlers.KotlinFindUsagesHandlerDecorator
|
||||
import org.jetbrains.jet.plugin.util.application.runReadAction
|
||||
import org.jetbrains.kotlin.psi.JetNamedDeclaration
|
||||
import org.jetbrains.kotlin.psi.JetProperty
|
||||
import org.jetbrains.kotlin.idea.util.application.runReadAction
|
||||
|
||||
class AndroidFindUsageHandlerDecorator : KotlinFindUsagesHandlerDecorator {
|
||||
override fun decorateHandler(element: PsiElement, forHighlightUsages: Boolean, delegate: FindUsagesHandler): FindUsagesHandler {
|
||||
|
||||
+5
-5
@@ -23,15 +23,15 @@ import com.intellij.openapi.actionSystem.DataContext
|
||||
import com.intellij.openapi.components.ServiceManager
|
||||
import org.jetbrains.jet.lang.resolve.android.AndroidUIXmlProcessor
|
||||
import com.intellij.psi.impl.source.tree.LeafPsiElement
|
||||
import org.jetbrains.jet.plugin.references.JetSimpleNameReference
|
||||
import org.jetbrains.jet.lang.psi.JetSimpleNameExpression
|
||||
import org.jetbrains.jet.lang.psi.JetProperty
|
||||
import com.intellij.psi.impl.light.LightElement
|
||||
import com.intellij.psi.xml.XmlAttribute
|
||||
import com.intellij.psi.PsiField
|
||||
import com.intellij.openapi.module.ModuleServiceManager
|
||||
import org.jetbrains.jet.plugin.caches.resolve.getModuleInfo
|
||||
import org.jetbrains.jet.plugin.caches.resolve.ModuleSourceInfo
|
||||
import org.jetbrains.kotlin.psi.JetSimpleNameExpression
|
||||
import org.jetbrains.kotlin.idea.references.JetSimpleNameReference
|
||||
import org.jetbrains.kotlin.psi.JetProperty
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.ModuleSourceInfo
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.getModuleInfo
|
||||
|
||||
public class AndroidGotoDeclarationHandler : GotoDeclarationHandler {
|
||||
|
||||
|
||||
+10
-7
@@ -18,8 +18,6 @@ package org.jetbrains.jet.plugin.android
|
||||
|
||||
import com.intellij.psi.PsiElement
|
||||
import com.intellij.refactoring.rename.RenamePsiElementProcessor
|
||||
import org.jetbrains.jet.asJava.*
|
||||
import org.jetbrains.jet.lang.psi.JetProperty
|
||||
import org.jetbrains.jet.lang.resolve.android.isAndroidSyntheticElement
|
||||
import com.intellij.openapi.components.ServiceManager
|
||||
import org.jetbrains.jet.lang.resolve.android.AndroidUIXmlProcessor
|
||||
@@ -30,15 +28,20 @@ import org.jetbrains.android.util.AndroidResourceUtil
|
||||
import com.intellij.psi.xml.XmlAttribute
|
||||
import com.intellij.psi.impl.light.LightElement
|
||||
import com.intellij.openapi.module.ModuleServiceManager
|
||||
import org.jetbrains.jet.plugin.caches.resolve.getModuleInfo
|
||||
import org.jetbrains.jet.plugin.caches.resolve.ModuleSourceInfo
|
||||
import com.intellij.openapi.module.Module
|
||||
import org.jetbrains.jet.lang.psi.JetFile
|
||||
import org.jetbrains.jet.lang.psi.moduleInfo
|
||||
import org.jetbrains.jet.lang.resolve.android.nameToIdDeclaration
|
||||
import org.jetbrains.jet.lang.resolve.android.idToName
|
||||
import com.intellij.psi.PsiField
|
||||
import com.intellij.psi.PsiClass
|
||||
import org.jetbrains.jet.lang.resolve.android.AndroidConst
|
||||
import com.intellij.openapi.module.ModuleUtil
|
||||
import com.intellij.openapi.module.ModuleUtilCore
|
||||
import org.jetbrains.kotlin.psi.JetProperty
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.ModuleSourceInfo
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.getModuleInfo
|
||||
import org.jetbrains.kotlin.psi.JetFile
|
||||
import org.jetbrains.kotlin.psi.moduleInfo
|
||||
import org.jetbrains.kotlin.asJava.namedUnwrappedElement
|
||||
|
||||
public class AndroidRenameProcessor : RenamePsiElementProcessor() {
|
||||
|
||||
@@ -46,7 +49,7 @@ public class AndroidRenameProcessor : RenamePsiElementProcessor() {
|
||||
// Either renaming synthetic property, or value in layout xml, or R class field
|
||||
return (element.namedUnwrappedElement is JetProperty &&
|
||||
isAndroidSyntheticElement(element.namedUnwrappedElement)) || element is XmlAttributeValue ||
|
||||
isRClassField(element)
|
||||
isRClassField(element)
|
||||
}
|
||||
|
||||
private fun isRClassField(element: PsiElement): Boolean {
|
||||
|
||||
+3
-3
@@ -17,13 +17,13 @@
|
||||
package org.jetbrains.jet.plugin.android
|
||||
|
||||
import org.jetbrains.jet.plugin.findUsages.handlers.SimpleNameReferenceExtension
|
||||
import org.jetbrains.jet.plugin.references.JetSimpleNameReference
|
||||
import com.intellij.psi.PsiElement
|
||||
import org.jetbrains.jet.lang.resolve.android.isAndroidSyntheticElement
|
||||
import org.jetbrains.android.dom.wrappers.ValueResourceElementWrapper
|
||||
import org.jetbrains.jet.lang.psi.JetProperty
|
||||
import com.intellij.psi.impl.light.LightElement
|
||||
import org.jetbrains.jet.lang.psi.JetPsiFactory
|
||||
import org.jetbrains.kotlin.idea.references.JetSimpleNameReference
|
||||
import org.jetbrains.kotlin.psi.JetProperty
|
||||
import org.jetbrains.kotlin.psi.JetPsiFactory
|
||||
|
||||
public class AndroidSimpleNameReferenceExtension : SimpleNameReferenceExtension {
|
||||
override fun isReferenceTo(reference: JetSimpleNameReference, element: PsiElement): Boolean? {
|
||||
|
||||
+7
-7
@@ -18,13 +18,13 @@ package org.jetbrains.jet.plugin.android
|
||||
|
||||
import com.intellij.openapi.project.Project
|
||||
import org.jetbrains.jet.extensions.ExternalDeclarationsProvider
|
||||
import org.jetbrains.jet.analyzer.ModuleInfo
|
||||
import org.jetbrains.jet.lang.psi.JetFile
|
||||
import com.intellij.openapi.components.ServiceManager
|
||||
import org.jetbrains.jet.lang.resolve.android.AndroidUIXmlProcessor
|
||||
import org.jetbrains.jet.plugin.caches.resolve.ModuleSourceInfo
|
||||
import com.intellij.openapi.module.ModuleServiceManager
|
||||
import org.jetbrains.jet.lang.psi.moduleInfo
|
||||
import org.jetbrains.kotlin.analyzer.ModuleInfo
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.ModuleSourceInfo
|
||||
import org.jetbrains.kotlin.psi.JetFile
|
||||
import org.jetbrains.kotlin.psi.moduleInfo
|
||||
|
||||
public class IDEAndroidExternalDeclarationsProvider(private val project: Project) : ExternalDeclarationsProvider {
|
||||
override fun getExternalDeclarations(moduleInfo: ModuleInfo?): Collection<JetFile> {
|
||||
@@ -32,9 +32,9 @@ public class IDEAndroidExternalDeclarationsProvider(private val project: Project
|
||||
|
||||
val module = moduleInfo.module
|
||||
val parser = ModuleServiceManager.getService<AndroidUIXmlProcessor>(module, javaClass<AndroidUIXmlProcessor>())
|
||||
val syntheticFile = parser.parseToPsi()
|
||||
syntheticFile?.moduleInfo = moduleInfo
|
||||
val syntheticFiles = parser.parseToPsi()
|
||||
syntheticFiles?.forEach { it.moduleInfo = moduleInfo }
|
||||
|
||||
return if (syntheticFile != null) listOf(syntheticFile) else listOf()
|
||||
return syntheticFiles ?: listOf()
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user