diff --git a/java/java-impl/src/com/intellij/refactoring/makeStatic/MakeClassStaticProcessor.java b/java/java-impl/src/com/intellij/refactoring/makeStatic/MakeClassStaticProcessor.java index 0040d4420b7b..1fe1f16c5547 100644 --- a/java/java-impl/src/com/intellij/refactoring/makeStatic/MakeClassStaticProcessor.java +++ b/java/java-impl/src/com/intellij/refactoring/makeStatic/MakeClassStaticProcessor.java @@ -319,7 +319,21 @@ public class MakeClassStaticProcessor extends MakeMethodOrClassStaticProcessor

B { + public B() { + } + } + + static void m(A a) { + B b = new A().new B(); + B b1 = a.new B(); + B b2 = new B(); + B b3 = getA().new B(); + } + + static A getA(){return null;} + + +} diff --git a/java/java-tests/testData/refactoring/makeClassStatic/newExpressionQualifications_after.java b/java/java-tests/testData/refactoring/makeClassStatic/newExpressionQualifications_after.java new file mode 100644 index 000000000000..9f56c56af62a --- /dev/null +++ b/java/java-tests/testData/refactoring/makeClassStatic/newExpressionQualifications_after.java @@ -0,0 +1,17 @@ +public class A { + private static class B { + public B() { + } + } + + static void m(A a) { + B b = new B(); + B b1 = new B(); + B b2 = new B(); + B b3 = new B(); + } + + static A getA(){return null;} + + +} diff --git a/java/java-tests/testSrc/com/intellij/refactoring/MakeClassStaticTest.java b/java/java-tests/testSrc/com/intellij/refactoring/MakeClassStaticTest.java index 0b829ad02333..5eaa93be38fb 100644 --- a/java/java-tests/testSrc/com/intellij/refactoring/MakeClassStaticTest.java +++ b/java/java-tests/testSrc/com/intellij/refactoring/MakeClassStaticTest.java @@ -39,6 +39,8 @@ public class MakeClassStaticTest extends LightCodeInsightTestCase { public void testIDEADEV12762() throws Exception { perform(); } + public void testNewExpressionQualifications() throws Exception {perform();} + public void testRegularReference() throws Exception { perform(); }