From 578826bb301b0a4744f0d543ade30738b6aa7d73 Mon Sep 17 00:00:00 2001 From: anna Date: Thu, 31 Oct 2013 16:32:14 +0100 Subject: [PATCH] disable flip intersection conjuncts for equal sides --- .../daemon/impl/quickfix/FlipIntersectionSidesFix.java | 4 +++- .../quickFix/flipIntersection/before2.java | 7 +++++++ 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/flipIntersection/before2.java diff --git a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/FlipIntersectionSidesFix.java b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/FlipIntersectionSidesFix.java index d6422918e6c4..8eed99632fda 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/FlipIntersectionSidesFix.java +++ b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/FlipIntersectionSidesFix.java @@ -20,6 +20,7 @@ import com.intellij.codeInsight.intention.IntentionAction; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.editor.Editor; import com.intellij.openapi.project.Project; +import com.intellij.openapi.util.Comparing; import com.intellij.openapi.util.text.StringUtil; import com.intellij.psi.*; import com.intellij.psi.codeStyle.CodeStyleManager; @@ -46,6 +47,7 @@ public class FlipIntersectionSidesFix implements IntentionAction { PsiTypeElement castTypeElement) { myClassName = className; myConjuncts = conjList; + LOG.assertTrue(!conjList.isEmpty()); myConjunct = conjunct; myCastTypeElement = castTypeElement; } @@ -67,7 +69,7 @@ public class FlipIntersectionSidesFix implements IntentionAction { for (PsiTypeElement typeElement : myConjuncts) { if (!typeElement.isValid()) return false; } - return true; + return !Comparing.strEqual(myConjunct.getText(), myConjuncts.get(0).getText()); } @Override diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/flipIntersection/before2.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/flipIntersection/before2.java new file mode 100644 index 000000000000..34f28f2733f3 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/flipIntersection/before2.java @@ -0,0 +1,7 @@ +// "Move 'Number' to the beginning" "false" +class C { + { + Object x = null; + Object y2 = (Number & Number) x; + } +}