Made "Remove Explicitly Specified Type" available on property type.
This commit is contained in:
@@ -56,6 +56,10 @@ public class SpecifyTypeExplicitlyAction extends PsiElementBaseIntentionAction {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void invoke(@NotNull Project project, Editor editor, @NotNull PsiElement element) {
|
public void invoke(@NotNull Project project, Editor editor, @NotNull PsiElement element) {
|
||||||
|
JetTypeReference typeRefParent = PsiTreeUtil.getTopmostParentOfType(element, JetTypeReference.class);
|
||||||
|
if (typeRefParent != null) {
|
||||||
|
element = typeRefParent;
|
||||||
|
}
|
||||||
PsiElement parent = element.getParent();
|
PsiElement parent = element.getParent();
|
||||||
JetType type = getTypeForDeclaration((JetNamedDeclaration) parent);
|
JetType type = getTypeForDeclaration((JetNamedDeclaration) parent);
|
||||||
if (ErrorUtils.isErrorType(type)) {
|
if (ErrorUtils.isErrorType(type)) {
|
||||||
@@ -91,6 +95,10 @@ public class SpecifyTypeExplicitlyAction extends PsiElementBaseIntentionAction {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isAvailable(@NotNull Project project, Editor editor, @NotNull PsiElement element) {
|
public boolean isAvailable(@NotNull Project project, Editor editor, @NotNull PsiElement element) {
|
||||||
|
JetTypeReference typeRefParent = PsiTreeUtil.getTopmostParentOfType(element, JetTypeReference.class);
|
||||||
|
if (typeRefParent != null) {
|
||||||
|
element = typeRefParent;
|
||||||
|
}
|
||||||
PsiElement parent = element.getParent();
|
PsiElement parent = element.getParent();
|
||||||
if (!(parent instanceof JetNamedDeclaration)) {
|
if (!(parent instanceof JetNamedDeclaration)) {
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
// "Remove Explicitly Specified Type" "true"
|
||||||
|
import java.util.Map
|
||||||
|
|
||||||
|
val x = null
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
// "Remove Explicitly Specified Type" "true"
|
||||||
|
import java.util.Map
|
||||||
|
|
||||||
|
val x : Map.Entry<Stri<caret>ng, Int>? = null
|
||||||
@@ -53,6 +53,10 @@ public class SpecifyTypeExplicitlyTest extends LightIntentionActionTestCase {
|
|||||||
doTest();
|
doTest();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void testOnType() {
|
||||||
|
doTest();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected String getTestDataPath() {
|
protected String getTestDataPath() {
|
||||||
return PluginTestCaseBase.getTestDataPathBase() + "/intentions/";
|
return PluginTestCaseBase.getTestDataPathBase() + "/intentions/";
|
||||||
|
|||||||
Reference in New Issue
Block a user