From 8c9c1609c0d90566192b623eea21ea5a5d17a2ae Mon Sep 17 00:00:00 2001 From: Alexey Sedunov Date: Mon, 29 Jan 2018 16:13:10 +0300 Subject: [PATCH] Move Class to Top Leve: Suggest file name based on new class name #KT-17977 Fixed --- .../ui/MoveKotlinNestedClassesToUpperLevelDialog.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/ui/MoveKotlinNestedClassesToUpperLevelDialog.java b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/ui/MoveKotlinNestedClassesToUpperLevelDialog.java index 8ed60f2e329..a61f0f464b9 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/ui/MoveKotlinNestedClassesToUpperLevelDialog.java +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/ui/MoveKotlinNestedClassesToUpperLevelDialog.java @@ -376,6 +376,8 @@ public class MoveKotlinNestedClassesToUpperLevelDialog extends MoveDialogBase { settings.MOVE_TO_UPPER_LEVEL_SEARCH_FOR_TEXT = searchForTextOccurrencesCheckBox.isSelected(); settings.MOVE_TO_UPPER_LEVEL_SEARCH_IN_COMMENTS = searchInCommentsCheckBox.isSelected(); + String newClassName = getClassName(); + KotlinMoveTarget moveTarget; if (target instanceof PsiDirectory) { final PsiDirectory targetDir = (PsiDirectory) target; @@ -383,10 +385,8 @@ public class MoveKotlinNestedClassesToUpperLevelDialog extends MoveDialogBase { final FqName targetPackageFqName = getTargetPackageFqName(target); if (targetPackageFqName == null) return; - String innerClassName = innerClass.getName(); - if (innerClassName == null) return; final String targetFileName = KotlinNameSuggester.INSTANCE.suggestNameByName( - innerClassName, + newClassName, new Function1() { @Override public Boolean invoke(String s) { @@ -412,7 +412,6 @@ public class MoveKotlinNestedClassesToUpperLevelDialog extends MoveDialogBase { } String outerInstanceParameterName = passOuterClassCheckBox.isSelected() ? getParameterName() : null; - String newClassName = getClassName(); MoveDeclarationsDelegate delegate = new MoveDeclarationsDelegate.NestedClass(newClassName, outerInstanceParameterName); MoveDeclarationsDescriptor moveDescriptor = new MoveDeclarationsDescriptor( project,