Navigation: Use local search scope for top-level properties in script

#KT-20465 Fixed
This commit is contained in:
Alexey Sedunov
2018-05-31 15:20:42 +03:00
parent 0110f66529
commit 0f80dd4ecf
@@ -141,6 +141,12 @@ abstract class KtNamedDeclarationStub<T extends KotlinStubWithFqName<?>> extends
return new LocalSearchScope(enclosingBlock);
}
PsiElement parent = getParent();
PsiElement grandParent = parent != null ? parent.getParent() : null;
if (parent instanceof KtBlockExpression && grandParent instanceof KtScript) {
return new LocalSearchScope(getContainingFile());
}
if (hasModifier(KtTokens.PRIVATE_KEYWORD)) {
KtElement containingClass = PsiTreeUtil.getParentOfType(this, KtClassOrObject.class);
if (containingClass instanceof KtObjectDeclaration && ((KtObjectDeclaration) containingClass).isCompanion()) {