MPP: Enable Android-specific content root logic for Android Studio
#KT-26813 Fixed
This commit is contained in:
+2
-1
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.android.configure
|
|||||||
|
|
||||||
import com.android.builder.model.AndroidProject
|
import com.android.builder.model.AndroidProject
|
||||||
import com.android.builder.model.NativeAndroidProject
|
import com.android.builder.model.NativeAndroidProject
|
||||||
|
import com.android.tools.idea.IdeInfo
|
||||||
import com.android.tools.idea.gradle.project.sync.idea.data.model.ImportedModule
|
import com.android.tools.idea.gradle.project.sync.idea.data.model.ImportedModule
|
||||||
import com.android.tools.idea.gradle.project.sync.idea.data.service.AndroidProjectKeys.IMPORTED_MODULE
|
import com.android.tools.idea.gradle.project.sync.idea.data.service.AndroidProjectKeys.IMPORTED_MODULE
|
||||||
import com.intellij.openapi.externalSystem.model.DataNode
|
import com.intellij.openapi.externalSystem.model.DataNode
|
||||||
@@ -48,7 +49,7 @@ class KotlinAndroidMPPGradleProjectResolver : AbstractProjectResolverExtension()
|
|||||||
|
|
||||||
override fun populateModuleContentRoots(gradleModule: IdeaModule, ideModule: DataNode<ModuleData>) {
|
override fun populateModuleContentRoots(gradleModule: IdeaModule, ideModule: DataNode<ModuleData>) {
|
||||||
super.populateModuleContentRoots(gradleModule, ideModule)
|
super.populateModuleContentRoots(gradleModule, ideModule)
|
||||||
if (isAndroidProject) {
|
if (IdeInfo.getInstance().isAndroidStudio || isAndroidProject) {
|
||||||
KotlinMPPGradleProjectResolver.populateContentRoots(gradleModule, ideModule, resolverCtx)
|
KotlinMPPGradleProjectResolver.populateContentRoots(gradleModule, ideModule, resolverCtx)
|
||||||
// Work around module disposal service which discards modules without accompanying ImportedModule instance
|
// Work around module disposal service which discards modules without accompanying ImportedModule instance
|
||||||
for (childNode in ExternalSystemApiUtil.getChildren(ideModule, GradleSourceSetData.KEY)) {
|
for (childNode in ExternalSystemApiUtil.getChildren(ideModule, GradleSourceSetData.KEY)) {
|
||||||
|
|||||||
+2
-1
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.android.configure
|
|||||||
|
|
||||||
import com.android.builder.model.AndroidProject
|
import com.android.builder.model.AndroidProject
|
||||||
import com.android.builder.model.NativeAndroidProject
|
import com.android.builder.model.NativeAndroidProject
|
||||||
|
import com.android.tools.idea.IdeInfo
|
||||||
import com.android.tools.idea.gradle.ImportedModule
|
import com.android.tools.idea.gradle.ImportedModule
|
||||||
import com.android.tools.idea.gradle.project.sync.idea.data.service.AndroidProjectKeys.IMPORTED_MODULE
|
import com.android.tools.idea.gradle.project.sync.idea.data.service.AndroidProjectKeys.IMPORTED_MODULE
|
||||||
import com.intellij.openapi.externalSystem.model.DataNode
|
import com.intellij.openapi.externalSystem.model.DataNode
|
||||||
@@ -48,7 +49,7 @@ class KotlinAndroidMPPGradleProjectResolver : AbstractProjectResolverExtension()
|
|||||||
|
|
||||||
override fun populateModuleContentRoots(gradleModule: IdeaModule, ideModule: DataNode<ModuleData>) {
|
override fun populateModuleContentRoots(gradleModule: IdeaModule, ideModule: DataNode<ModuleData>) {
|
||||||
super.populateModuleContentRoots(gradleModule, ideModule)
|
super.populateModuleContentRoots(gradleModule, ideModule)
|
||||||
if (isAndroidProject) {
|
if (IdeInfo.getInstance().isAndroidStudio || isAndroidProject) {
|
||||||
KotlinMPPGradleProjectResolver.populateContentRoots(gradleModule, ideModule, resolverCtx)
|
KotlinMPPGradleProjectResolver.populateContentRoots(gradleModule, ideModule, resolverCtx)
|
||||||
// Work around module disposal service which discards modules without accompanying ImportedModule instance
|
// Work around module disposal service which discards modules without accompanying ImportedModule instance
|
||||||
for (childNode in ExternalSystemApiUtil.getChildren(ideModule, GradleSourceSetData.KEY)) {
|
for (childNode in ExternalSystemApiUtil.getChildren(ideModule, GradleSourceSetData.KEY)) {
|
||||||
|
|||||||
+2
-1
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.android.configure
|
|||||||
|
|
||||||
import com.android.builder.model.AndroidProject
|
import com.android.builder.model.AndroidProject
|
||||||
import com.android.builder.model.NativeAndroidProject
|
import com.android.builder.model.NativeAndroidProject
|
||||||
|
import com.android.tools.idea.IdeInfo
|
||||||
import com.android.tools.idea.gradle.project.sync.idea.data.model.ImportedModule
|
import com.android.tools.idea.gradle.project.sync.idea.data.model.ImportedModule
|
||||||
import com.android.tools.idea.gradle.project.sync.idea.data.service.AndroidProjectKeys.IMPORTED_MODULE
|
import com.android.tools.idea.gradle.project.sync.idea.data.service.AndroidProjectKeys.IMPORTED_MODULE
|
||||||
import com.intellij.openapi.externalSystem.model.DataNode
|
import com.intellij.openapi.externalSystem.model.DataNode
|
||||||
@@ -48,7 +49,7 @@ class KotlinAndroidMPPGradleProjectResolver : AbstractProjectResolverExtension()
|
|||||||
|
|
||||||
override fun populateModuleContentRoots(gradleModule: IdeaModule, ideModule: DataNode<ModuleData>) {
|
override fun populateModuleContentRoots(gradleModule: IdeaModule, ideModule: DataNode<ModuleData>) {
|
||||||
super.populateModuleContentRoots(gradleModule, ideModule)
|
super.populateModuleContentRoots(gradleModule, ideModule)
|
||||||
if (isAndroidProject) {
|
if (IdeInfo.getInstance().isAndroidStudio || isAndroidProject) {
|
||||||
KotlinMPPGradleProjectResolver.populateContentRoots(gradleModule, ideModule, resolverCtx)
|
KotlinMPPGradleProjectResolver.populateContentRoots(gradleModule, ideModule, resolverCtx)
|
||||||
// Work around module disposal service which discards modules without accompanying ImportedModule instance
|
// Work around module disposal service which discards modules without accompanying ImportedModule instance
|
||||||
for (childNode in ExternalSystemApiUtil.getChildren(ideModule, GradleSourceSetData.KEY)) {
|
for (childNode in ExternalSystemApiUtil.getChildren(ideModule, GradleSourceSetData.KEY)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user