Fix compilation to match changes in SdkConstants (#1533)

... and match the intended semantics for AndroidxName.

Change-Id: If2148ab8cefcc124a72f63458b7dbddf1a6cfe04
diff --git a/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/AddTargetApiQuickFix.kt b/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/AddTargetApiQuickFix.kt
index 2e3c95f..a315842 100644
--- a/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/AddTargetApiQuickFix.kt
+++ b/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/AddTargetApiQuickFix.kt
@@ -32,12 +32,12 @@
 
 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 @@
 
         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 b/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/KotlinAndroidQuickFixProvider.kt
index c96480c..0f17a86 100644
--- a/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/KotlinAndroidQuickFixProvider.kt
+++ b/idea/idea-android/src/org/jetbrains/kotlin/android/quickfix/KotlinAndroidQuickFixProvider.kt
@@ -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 @@
         }
 
         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 @@
     }
 
     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