don't show two "Rename variables" checkboxes for a Kotlin class
#KT-8509 Fixed
This commit is contained in:
@@ -414,6 +414,7 @@
|
||||
<renameHandler implementation="org.jetbrains.kotlin.idea.refactoring.rename.RenameDynamicMemberHandler"/>
|
||||
<renameHandler implementation="org.jetbrains.kotlin.idea.refactoring.rename.RenameOnSecondaryConstructorHandler"/>
|
||||
<automaticRenamerFactory implementation="org.jetbrains.kotlin.idea.refactoring.rename.AutomaticVariableRenamerFactory"/>
|
||||
<automaticRenamerFactory implementation="org.jetbrains.kotlin.idea.refactoring.rename.AutomaticVariableRenamerFactoryForJavaClass"/>
|
||||
<automaticRenamerFactory implementation="org.jetbrains.kotlin.idea.refactoring.rename.AutomaticVariableInJavaRenamerFactory"/>
|
||||
<automaticRenamerFactory implementation="org.jetbrains.kotlin.idea.refactoring.rename.AutomaticInheritorRenamerFactory"/>
|
||||
<automaticRenamerFactory implementation="org.jetbrains.kotlin.idea.refactoring.rename.AutomaticOverloadsRenamerFactory"/>
|
||||
|
||||
@@ -116,8 +116,8 @@ private fun KotlinType.isCollectionLikeOf(classPsiElement: PsiNamedElement): Boo
|
||||
}
|
||||
|
||||
|
||||
class AutomaticVariableRenamerFactory: AutomaticRenamerFactory {
|
||||
override fun isApplicable(element: PsiElement) = element is KtClass || element is PsiClass
|
||||
open class AutomaticVariableRenamerFactory: AutomaticRenamerFactory {
|
||||
override fun isApplicable(element: PsiElement) = element is KtClass
|
||||
|
||||
override fun createRenamer(element: PsiElement, newName: String, usages: Collection<UsageInfo>) =
|
||||
AutomaticVariableRenamer(element as PsiNamedElement, newName, usages)
|
||||
@@ -128,6 +128,12 @@ class AutomaticVariableRenamerFactory: AutomaticRenamerFactory {
|
||||
override fun getOptionName() = RefactoringBundle.message("rename.variables")
|
||||
}
|
||||
|
||||
class AutomaticVariableRenamerFactoryForJavaClass : AutomaticVariableRenamerFactory() {
|
||||
override fun isApplicable(element: PsiElement) = element is PsiClass
|
||||
|
||||
override fun getOptionName() = null
|
||||
}
|
||||
|
||||
class AutomaticVariableInJavaRenamerFactory: AutomaticRenamerFactory {
|
||||
override fun isApplicable(element: PsiElement) = element is KtClass && element.toLightClass() != null
|
||||
|
||||
@@ -138,5 +144,5 @@ class AutomaticVariableInJavaRenamerFactory: AutomaticRenamerFactory {
|
||||
override fun isEnabled() = JavaRefactoringSettings.getInstance().isToRenameVariables
|
||||
override fun setEnabled(enabled: Boolean) = JavaRefactoringSettings.getInstance().setRenameVariables(enabled)
|
||||
|
||||
override fun getOptionName() = RefactoringBundle.message("rename.variables")
|
||||
override fun getOptionName() = null
|
||||
}
|
||||
Reference in New Issue
Block a user