Disable annotation check for Android Studio and non-android sdk

Android studio always creates that sdk from scratch so no configuration will be stored after restart (KT-7517)
This commit is contained in:
Nikolay Krasko
2015-07-15 21:50:56 +03:00
parent 3412febe59
commit 9366652537
@@ -32,6 +32,7 @@ import com.intellij.openapi.vfs.VirtualFileManager;
import com.intellij.openapi.vfs.newvfs.BulkFileListener;
import com.intellij.openapi.vfs.newvfs.events.*;
import com.intellij.util.Alarm;
import com.intellij.util.PlatformUtils;
import com.intellij.util.messages.MessageBusConnection;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.kotlin.idea.configuration.AbsentSdkAnnotationsNotificationManager;
@@ -133,8 +134,19 @@ public class AbsentJdkAnnotationsComponent extends AbstractProjectComponent {
}
private static boolean areAnnotationsCorrect(@NotNull Sdk sdk) {
return NotificationsPackage.isAndroidSdk(sdk)
? KotlinRuntimeLibraryUtil.androidSdkAnnotationsArePresent(sdk) && !KotlinRuntimeLibraryUtil.jdkAnnotationsArePresent(sdk)
: KotlinRuntimeLibraryUtil.jdkAnnotationsArePresent(sdk);
if (NotificationsPackage.isAndroidSdk(sdk)) {
return KotlinRuntimeLibraryUtil.androidSdkAnnotationsArePresent(sdk) && !KotlinRuntimeLibraryUtil.jdkAnnotationsArePresent(sdk);
}
else if (!isAndroidStudio()) {
return KotlinRuntimeLibraryUtil.jdkAnnotationsArePresent(sdk);
}
else {
// Android studio always recreates standard sdk from scratch so any addition configuration will be lost
return true;
}
}
private static boolean isAndroidStudio() {
return "AndroidStudio".equals(PlatformUtils.getPlatformPrefix());
}
}