Check scriptDefinition expected location for scripts when use ProjectRootUtil.isInContent
This commit is contained in:
@@ -71,8 +71,7 @@ val PsiReference.unwrappedTargets: Set<PsiElement>
|
|||||||
fun PsiReference.canBeReferenceTo(candidateTarget: PsiElement): Boolean {
|
fun PsiReference.canBeReferenceTo(candidateTarget: PsiElement): Boolean {
|
||||||
// optimization
|
// optimization
|
||||||
return element.containingFile == candidateTarget.containingFile
|
return element.containingFile == candidateTarget.containingFile
|
||||||
|| ProjectRootsUtil.isInProjectOrLibSource(element)
|
|| ProjectRootsUtil.isInProjectOrLibSource(element, includeScriptsOutsideSourceRoots = true)
|
||||||
|| ScratchUtil.isScratch(element.containingFile.virtualFile)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fun PsiReference.matchesTarget(candidateTarget: PsiElement): Boolean {
|
fun PsiReference.matchesTarget(candidateTarget: PsiElement): Boolean {
|
||||||
|
|||||||
@@ -460,7 +460,7 @@ fun PsiElement.canRefactor(): Boolean {
|
|||||||
this is KtElement ||
|
this is KtElement ||
|
||||||
this is PsiMember && language == JavaLanguage.INSTANCE ||
|
this is PsiMember && language == JavaLanguage.INSTANCE ||
|
||||||
this is PsiDirectory ->
|
this is PsiDirectory ->
|
||||||
ProjectRootsUtil.isInProjectSource(this) || ((containingFile as? KtFile)?.isScript() ?: false)
|
ProjectRootsUtil.isInProjectSource(this, includeScriptsOutsideSourceRoots = true)
|
||||||
else ->
|
else ->
|
||||||
false
|
false
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -460,7 +460,7 @@ fun PsiElement.canRefactor(): Boolean {
|
|||||||
this is KtElement ||
|
this is KtElement ||
|
||||||
this is PsiMember && language == JavaLanguage.INSTANCE ||
|
this is PsiMember && language == JavaLanguage.INSTANCE ||
|
||||||
this is PsiDirectory ->
|
this is PsiDirectory ->
|
||||||
ProjectRootsUtil.isInProjectSource(this) || ((containingFile as? KtFile)?.isScript() ?: false)
|
ProjectRootsUtil.isInProjectSource(this, includeScriptsOutsideSourceRoots = true)
|
||||||
else ->
|
else ->
|
||||||
false
|
false
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -38,7 +38,8 @@ class RenameKotlinFileProcessor : RenamePsiFileProcessor() {
|
|||||||
override fun isValid() = file.isValid
|
override fun isValid() = file.isValid
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun canProcessElement(element: PsiElement) = element is KtFile && ProjectRootsUtil.isInProjectSource(element)
|
override fun canProcessElement(element: PsiElement) =
|
||||||
|
element is KtFile && ProjectRootsUtil.isInProjectSource(element, includeScriptsOutsideSourceRoots = true)
|
||||||
|
|
||||||
override fun prepareRenaming(element: PsiElement,
|
override fun prepareRenaming(element: PsiElement,
|
||||||
newName: String,
|
newName: String,
|
||||||
|
|||||||
+2
-1
@@ -38,7 +38,8 @@ class RenameKotlinFileProcessor : RenamePsiFileProcessor() {
|
|||||||
override fun isValid() = file.isValid
|
override fun isValid() = file.isValid
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun canProcessElement(element: PsiElement) = element is KtFile && ProjectRootsUtil.isInProjectSource(element)
|
override fun canProcessElement(element: PsiElement) =
|
||||||
|
element is KtFile && ProjectRootsUtil.isInProjectSource(element, includeScriptsOutsideSourceRoots = true)
|
||||||
|
|
||||||
override fun prepareRenaming(element: PsiElement?,
|
override fun prepareRenaming(element: PsiElement?,
|
||||||
newName: String,
|
newName: String,
|
||||||
|
|||||||
@@ -35,7 +35,6 @@ import org.jetbrains.kotlin.codegen.state.KotlinTypeMapper
|
|||||||
import org.jetbrains.kotlin.idea.references.KtReference
|
import org.jetbrains.kotlin.idea.references.KtReference
|
||||||
import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchOptions
|
import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchOptions
|
||||||
import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchParameters
|
import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchParameters
|
||||||
import org.jetbrains.kotlin.idea.search.projectScope
|
|
||||||
import org.jetbrains.kotlin.idea.util.actualsForExpected
|
import org.jetbrains.kotlin.idea.util.actualsForExpected
|
||||||
import org.jetbrains.kotlin.idea.util.liftToExpected
|
import org.jetbrains.kotlin.idea.util.liftToExpected
|
||||||
import org.jetbrains.kotlin.name.Name
|
import org.jetbrains.kotlin.name.Name
|
||||||
@@ -68,7 +67,7 @@ abstract class RenameKotlinPsiProcessor : RenamePsiElementProcessor() {
|
|||||||
override fun findReferences(element: PsiElement): Collection<PsiReference> {
|
override fun findReferences(element: PsiElement): Collection<PsiReference> {
|
||||||
val searchParameters = KotlinReferencesSearchParameters(
|
val searchParameters = KotlinReferencesSearchParameters(
|
||||||
element,
|
element,
|
||||||
element.project.projectScope(),
|
element.useScope,
|
||||||
kotlinOptions = KotlinReferencesSearchOptions(searchForComponentConventions = false)
|
kotlinOptions = KotlinReferencesSearchOptions(searchForComponentConventions = false)
|
||||||
)
|
)
|
||||||
val references = ReferencesSearch.search(searchParameters).toMutableList()
|
val references = ReferencesSearch.search(searchParameters).toMutableList()
|
||||||
|
|||||||
+1
-1
@@ -47,7 +47,7 @@ abstract class RenameKotlinPsiProcessor : RenamePsiElementProcessor() {
|
|||||||
override fun findReferences(element: PsiElement): Collection<PsiReference> {
|
override fun findReferences(element: PsiElement): Collection<PsiReference> {
|
||||||
val searchParameters = KotlinReferencesSearchParameters(
|
val searchParameters = KotlinReferencesSearchParameters(
|
||||||
element,
|
element,
|
||||||
element.project.projectScope(),
|
element.useScope,
|
||||||
kotlinOptions = KotlinReferencesSearchOptions(searchForComponentConventions = false)
|
kotlinOptions = KotlinReferencesSearchOptions(searchForComponentConventions = false)
|
||||||
)
|
)
|
||||||
val references = ReferencesSearch.search(searchParameters).toMutableList()
|
val references = ReferencesSearch.search(searchParameters).toMutableList()
|
||||||
|
|||||||
Reference in New Issue
Block a user