Move: Improve filtering in "Move nested class" dialog member list

Do not suggest inner classes and companion objects
 #KT-17515 Fixed
This commit is contained in:
Alexey Sedunov
2017-04-20 18:10:05 +03:00
parent 3acebc3001
commit d71b02f972
@@ -194,8 +194,12 @@ public class MoveKotlinNestedClassesDialog extends RefactoringDialog {
@Override
public KotlinMemberInfo invoke(KtDeclaration declaration) {
if (!(declaration instanceof KtClassOrObject)) return null;
KtClassOrObject classOrObject = (KtClassOrObject) declaration;
KotlinMemberInfo memberInfo = new KotlinMemberInfo((KtClassOrObject) declaration, false);
if (classOrObject instanceof KtClass && ((KtClass) classOrObject).isInner()) return null;
if (classOrObject instanceof KtObjectDeclaration && ((KtObjectDeclaration) classOrObject).isCompanion()) return null;
KotlinMemberInfo memberInfo = new KotlinMemberInfo(classOrObject, false);
memberInfo.setChecked(elementsToMove.contains(declaration));
return memberInfo;
}