diff --git a/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/AddTargetApiQuickFix.kt.as32 b/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/AddTargetApiQuickFix.kt.as32 index 2e3c95ff25d..a3158423e23 100644 --- a/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/AddTargetApiQuickFix.kt.as32 +++ b/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/AddTargetApiQuickFix.kt.as32 @@ -32,12 +32,12 @@ import org.jetbrains.kotlin.psi.* class AddTargetApiQuickFix( val api: Int, - val useRequiresApi: Boolean + val useRequiresApi: Boolean, + val useNewName: Boolean = false ) : AndroidLintQuickFix { private companion object { val FQNAME_TARGET_API = FqName(SdkConstants.FQCN_TARGET_API) - val FQNAME_REQUIRES_API = FqName(REQUIRES_API_ANNOTATION.defaultName()) } override fun isApplicable(startElement: PsiElement, endElement: PsiElement, contextType: AndroidQuickfixContexts.ContextType): Boolean = @@ -61,9 +61,12 @@ class AddTargetApiQuickFix( if (annotationContainer is KtModifierListOwner) { annotationContainer.addAnnotation( - if (useRequiresApi) FQNAME_REQUIRES_API else FQNAME_TARGET_API, - getAnnotationValue(true), - whiteSpaceText = if (annotationContainer.isNewLineNeededForAnnotation()) "\n" else " ") + if (useRequiresApi) + if (useNewName) FqName(REQUIRES_API_ANNOTATION.newName()) + else FqName(REQUIRES_API_ANNOTATION.oldName()) + else FQNAME_TARGET_API, + getAnnotationValue(true), + whiteSpaceText = if (annotationContainer.isNewLineNeededForAnnotation()) "\n" else " ") } } diff --git a/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/KotlinAndroidQuickFixProvider.kt.as32 b/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/KotlinAndroidQuickFixProvider.kt.as32 index c96480c222c..0f17a861027 100644 --- a/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/KotlinAndroidQuickFixProvider.kt.as32 +++ b/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/KotlinAndroidQuickFixProvider.kt.as32 @@ -17,6 +17,7 @@ package org.jetbrains.kotlin.android.quickfix import com.android.SdkConstants.SUPPORT_ANNOTATIONS_PREFIX +import com.android.support.AndroidxName import com.android.tools.lint.checks.ApiDetector import com.android.tools.lint.checks.CommentDetector import com.android.tools.lint.checks.ParcelDetector @@ -57,7 +58,10 @@ class KotlinAndroidQuickFixProvider : AndroidLintQuickFixProvider { } val project = element.project - if (JavaPsiFacade.getInstance(project).findClass(REQUIRES_API_ANNOTATION, GlobalSearchScope.allScope(project)) != null) { + if (JavaPsiFacade.getInstance(project).findClass(REQUIRES_API_ANNOTATION.newName(), GlobalSearchScope.allScope(project)) != null) { + return arrayOf(AddTargetApiQuickFix(api, true, true), AddTargetApiQuickFix(api, false, true), AddTargetVersionCheckQuickFix(api)) + } + if (JavaPsiFacade.getInstance(project).findClass(REQUIRES_API_ANNOTATION.oldName(), GlobalSearchScope.allScope(project)) != null) { return arrayOf(AddTargetApiQuickFix(api, true), AddTargetApiQuickFix(api, false), AddTargetVersionCheckQuickFix(api)) } @@ -75,6 +79,6 @@ class KotlinAndroidQuickFixProvider : AndroidLintQuickFixProvider { } companion object { - val REQUIRES_API_ANNOTATION = SUPPORT_ANNOTATIONS_PREFIX.defaultName() + "RequiresApi" + val REQUIRES_API_ANNOTATION = AndroidxName.of(SUPPORT_ANNOTATIONS_PREFIX, "RequiresApi") } } \ No newline at end of file