diff --git a/java/java-tests/testData/refactoring/renameInplace/EnumConstructor.java b/java/java-tests/testData/refactoring/renameInplace/EnumConstructor.java new file mode 100644 index 000000000000..b25ef10cb98e --- /dev/null +++ b/java/java-tests/testData/refactoring/renameInplace/EnumConstructor.java @@ -0,0 +1,8 @@ +enum Foo { + BAR, + BAZ + ; + + Foo() { + } +} \ No newline at end of file diff --git a/java/java-tests/testData/refactoring/renameInplace/EnumConstructor_after.java b/java/java-tests/testData/refactoring/renameInplace/EnumConstructor_after.java new file mode 100644 index 000000000000..83fd66215e1c --- /dev/null +++ b/java/java-tests/testData/refactoring/renameInplace/EnumConstructor_after.java @@ -0,0 +1,8 @@ +enum Bar { + BAR, + BAZ + ; + + Bar() { + } +} \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/refactoring/RenameMembersInplaceTest.java b/java/java-tests/testSrc/com/intellij/refactoring/RenameMembersInplaceTest.java index 86729522a0d6..509a68ceb95c 100644 --- a/java/java-tests/testSrc/com/intellij/refactoring/RenameMembersInplaceTest.java +++ b/java/java-tests/testSrc/com/intellij/refactoring/RenameMembersInplaceTest.java @@ -61,6 +61,10 @@ public class RenameMembersInplaceTest extends LightCodeInsightTestCase { public void testMethodWithJavadocRef() throws Exception { doTestInplaceRename("bar"); } + + public void testEnumConstructor() throws Exception { + doTestInplaceRename("Bar"); + } public void testConflictingMethodName() throws Exception { try { diff --git a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/InplaceRefactoring.java b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/InplaceRefactoring.java index 7f743742985f..a2fc0cc2413c 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/InplaceRefactoring.java +++ b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/InplaceRefactoring.java @@ -220,6 +220,10 @@ public abstract class InplaceRefactoring { } protected boolean acceptReference(PsiReference reference) { + final PsiElement element = reference.getElement(); + if (element instanceof PsiNamedElement) { + return Comparing.strEqual(((PsiNamedElement)element).getName(), myElementToRename.getName()); + } return true; }