mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-15 11:53:49 +07:00
IJPL-180572 Added combined frontend plugin manager controller
Introduced `FrontendDelegatingPluginManagerController` to unify local and remote plugin management, enabling a merged view of plugin sources. Updated related configurations and dependencies to seamlessly support this integration. GitOrigin-RevId: e2ae710f89f405422ecd177fe65cc1d7e29659a5
This commit is contained in:
committed by
intellij-monorepo-bot
parent
43d43e2d57
commit
cad2ef4938
@@ -40,9 +40,7 @@ interface PluginUiModel {
|
||||
val isPaid: Boolean
|
||||
val isEnabled: Boolean
|
||||
|
||||
val source: PluginSource
|
||||
val dependencies: List<PluginDependencyModel>
|
||||
|
||||
var dependencyNames: Collection<String>?
|
||||
|
||||
@get:NlsSafe
|
||||
@@ -56,14 +54,16 @@ interface PluginUiModel {
|
||||
|
||||
@get:NlsSafe
|
||||
val productCode: String?
|
||||
|
||||
@get:NlsSafe
|
||||
val size: String?
|
||||
|
||||
val releaseVersion: Int
|
||||
|
||||
@get:NlsSafe
|
||||
val displayCategory: String?
|
||||
|
||||
var source: PluginSource
|
||||
|
||||
@get:NlsSafe
|
||||
var forumUrl: String?
|
||||
|
||||
@@ -147,7 +147,7 @@ private fun PluginUiModel.getPluginDescriptor(): IdeaPluginDescriptor {
|
||||
|
||||
@ApiStatus.Internal
|
||||
enum class PluginSource {
|
||||
LOCAL, REMOTE
|
||||
LOCAL, REMOTE, BOTH
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -55,16 +55,15 @@ class PluginUiModelAdapter(
|
||||
override val isEnabled: Boolean
|
||||
get() = !PluginManagerCore.isDisabled(pluginDescriptor.pluginId)
|
||||
|
||||
override val source: PluginSource = PluginSource.LOCAL
|
||||
override val dependencies: List<PluginDependencyModel>
|
||||
get() = pluginDescriptor.dependencies.map { PluginDependencyModel(it.pluginId, it.isOptional) }
|
||||
override val vendor: String?
|
||||
get() = pluginDescriptor.vendor
|
||||
override val organization: String?
|
||||
get() = pluginDescriptor.organization
|
||||
|
||||
override val changeNotes: String?
|
||||
get() = pluginDescriptor.changeNotes
|
||||
|
||||
override val productCode: String?
|
||||
get() = pluginDescriptor.productCode
|
||||
override val size: String?
|
||||
@@ -80,6 +79,7 @@ class PluginUiModelAdapter(
|
||||
pluginDescriptor.forumUrl = value
|
||||
}
|
||||
}
|
||||
override var source: PluginSource = PluginSource.LOCAL
|
||||
override var licenseUrl: String?
|
||||
get() = if (pluginDescriptor is PluginNode) pluginDescriptor.licenseUrl else null
|
||||
set(value) {
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
<module name="intellij.platform.pluginManager.shared"/>
|
||||
</dependencies>
|
||||
<extensions defaultExtensionNs="com.intellij">
|
||||
<uiPluginManagerController implementation="com.intellij.platform.pluginManager.frontend.BackendUiPluginManagerController"
|
||||
order="first"/>
|
||||
<uiPluginManagerController implementation="com.intellij.platform.pluginManager.frontend.BackendUiPluginManagerController"/>
|
||||
</extensions>
|
||||
</idea-plugin>
|
||||
Reference in New Issue
Block a user