From d71b02f9729623e1e18b7d9cf3e735666f77af24 Mon Sep 17 00:00:00 2001 From: Alexey Sedunov Date: Thu, 20 Apr 2017 18:10:05 +0300 Subject: [PATCH] Move: Improve filtering in "Move nested class" dialog member list Do not suggest inner classes and companion objects #KT-17515 Fixed --- .../moveDeclarations/ui/MoveKotlinNestedClassesDialog.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/ui/MoveKotlinNestedClassesDialog.java b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/ui/MoveKotlinNestedClassesDialog.java index ebca977825d..00c36e4c8ec 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/ui/MoveKotlinNestedClassesDialog.java +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/ui/MoveKotlinNestedClassesDialog.java @@ -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; }