[vcs] [RD] IJPL-160237 Changed root package for new vcs-impl modules.

GitOrigin-RevId: 47bc4e91c42baa708a676f7568f4b578cb993428
This commit is contained in:
Denis Zaichenko
2024-12-27 16:33:30 +00:00
committed by intellij-monorepo-bot
parent d9705da367
commit eaca3b2b7c
80 changed files with 295 additions and 276 deletions
@@ -7,7 +7,7 @@ import com.intellij.openapi.project.Project
import com.intellij.platform.kernel.withKernel
import com.intellij.platform.project.asEntity
import com.intellij.platform.util.coroutines.sync.OverflowSemaphore
import com.intellij.vcs.impl.shared.rhizome.RepositoryCountEntity
import com.intellij.platform.vcs.impl.shared.rhizome.RepositoryCountEntity
import fleet.kernel.change
import fleet.kernel.shared
import kotlinx.coroutines.CoroutineScope
@@ -6,9 +6,9 @@ import com.intellij.dvcs.ui.RepositoryChangesBrowserNode
import com.intellij.openapi.project.Project
import com.intellij.openapi.vcs.changes.ui.CurrentBranchComponent.Companion.getCurrentBranch
import com.intellij.vcs.branch.BranchPresentation
import com.intellij.vcs.impl.backend.shelf.NodeToEntityConverter
import com.intellij.vcs.impl.shared.rhizome.NodeEntity
import com.intellij.vcs.impl.shared.rhizome.RepositoryNodeEntity
import com.intellij.platform.vcs.impl.backend.shelf.NodeToEntityConverter
import com.intellij.platform.vcs.impl.shared.rhizome.NodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.RepositoryNodeEntity
import fleet.kernel.SharedChangeScope
internal class RepositoryNodeToEntityConverter : NodeToEntityConverter<RepositoryChangesBrowserNode>(RepositoryChangesBrowserNode::class) {
@@ -19,7 +19,7 @@ import com.intellij.platform.lvcs.impl.ActivitySelection
import com.intellij.platform.lvcs.impl.filePath
import com.intellij.platform.lvcs.impl.statistics.LocalHistoryCounter
import com.intellij.util.EventDispatcher
import com.intellij.vcs.impl.shared.changes.DiffPreviewUpdateProcessor
import com.intellij.platform.vcs.impl.shared.changes.DiffPreviewUpdateProcessor
import org.jetbrains.annotations.Nls
internal class SingleFileActivityDiffPreview(project: Project, private val model: ActivityViewModel, disposable: Disposable) : EditorTabDiffPreview(project) {
@@ -36,7 +36,6 @@
<orderEntry type="library" name="kotlin-stdlib" level="project" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="kotlinx-coroutines-core" level="project" />
<orderEntry type="library" name="kotlin-stdlib" level="project" />
<orderEntry type="module" module-name="intellij.platform.vcs" exported="" />
<orderEntry type="module" module-name="intellij.platform.vcs.impl" />
<orderEntry type="module" module-name="intellij.platform.ide" />
@@ -1,21 +1,21 @@
<idea-plugin package="com.intellij.vcs.impl.backend">
<idea-plugin package="com.intellij.platform.vcs.impl.backend">
<dependencies>
<module name="intellij.platform.kernel.backend"/>
<module name="intellij.platform.vcs.impl"/>
<module name="intellij.platform.vcs.impl.shared"/>
</dependencies>
<extensions defaultExtensionNs="com.intellij">
<platform.rpc.backend.remoteApiProvider implementation="com.intellij.vcs.impl.backend.shelf.ShelfApiProvider"/>
<platform.rpc.backend.remoteApiProvider implementation="com.intellij.vcs.impl.backend.shelf.ShelfActionsApiProvider"/>
<vcs.impl.backend.treeNodeConverter implementation="com.intellij.vcs.impl.backend.shelf.ShelvedChangeListToEntityConverter"/>
<vcs.impl.backend.treeNodeConverter implementation="com.intellij.vcs.impl.backend.shelf.TagNodeToEntityConverter"/>
<vcs.impl.backend.treeNodeConverter implementation="com.intellij.vcs.impl.backend.shelf.ShelvedChangeNodeConverter"/>
<vcs.impl.backend.treeNodeConverter implementation="com.intellij.vcs.impl.backend.shelf.ModuleNodeToEntityConverter"/>
<vcs.impl.backend.treeNodeConverter implementation="com.intellij.vcs.impl.backend.shelf.FilePathNodeToEntityConverter"/>
<platform.rpc.backend.remoteApiProvider implementation="com.intellij.platform.vcs.impl.backend.shelf.ShelfApiProvider"/>
<platform.rpc.backend.remoteApiProvider implementation="com.intellij.platform.vcs.impl.backend.shelf.ShelfActionsApiProvider"/>
<vcs.impl.backend.treeNodeConverter implementation="com.intellij.platform.vcs.impl.backend.shelf.ShelvedChangeListToEntityConverter"/>
<vcs.impl.backend.treeNodeConverter implementation="com.intellij.platform.vcs.impl.backend.shelf.TagNodeToEntityConverter"/>
<vcs.impl.backend.treeNodeConverter implementation="com.intellij.platform.vcs.impl.backend.shelf.ShelvedChangeNodeConverter"/>
<vcs.impl.backend.treeNodeConverter implementation="com.intellij.platform.vcs.impl.backend.shelf.ModuleNodeToEntityConverter"/>
<vcs.impl.backend.treeNodeConverter implementation="com.intellij.platform.vcs.impl.backend.shelf.FilePathNodeToEntityConverter"/>
</extensions>
<extensionPoints>
<extensionPoint qualifiedName="com.intellij.vcs.impl.backend.treeNodeConverter"
interface="com.intellij.vcs.impl.backend.shelf.NodeToEntityConverter"
interface="com.intellij.platform.vcs.impl.backend.shelf.NodeToEntityConverter"
dynamic="true"/>
</extensionPoints>
</idea-plugin>
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf;
package com.intellij.platform.vcs.impl.backend.shelf
import com.intellij.openapi.vcs.changes.shelf.ShelvedChangeList
import java.util.Comparator
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf
package com.intellij.platform.vcs.impl.backend.shelf
import com.intellij.openapi.diagnostic.Logger
import com.intellij.openapi.diagnostic.logger
@@ -10,12 +10,14 @@ import com.intellij.openapi.vcs.changes.ui.ChangesBrowserFilePathNode
import com.intellij.openapi.vcs.changes.ui.ChangesBrowserModuleNode
import com.intellij.openapi.vcs.changes.ui.ChangesBrowserNode
import com.intellij.openapi.vcs.changes.ui.TagChangesBrowserNode
import com.intellij.platform.kernel.withKernel
import com.intellij.vcs.impl.shared.rhizome.*
import com.intellij.platform.vcs.impl.shared.rhizome.FilePathNodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ModuleNodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.NodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.shared.rhizome.TagNodeEntity
import com.intellij.vcsUtil.VcsUtil
import fleet.kernel.SharedChangeScope
import fleet.kernel.change
import fleet.kernel.shared
import org.jetbrains.annotations.ApiStatus
import kotlin.reflect.KClass
@@ -1,12 +1,12 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf
package com.intellij.platform.vcs.impl.backend.shelf
import com.intellij.platform.project.ProjectId
import com.intellij.platform.project.findProject
import com.intellij.platform.rpc.backend.RemoteApiProvider
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.vcs.impl.shared.rpc.RemoteShelfActionsApi
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.platform.vcs.impl.shared.rpc.RemoteShelfActionsApi
import fleet.kernel.DurableRef
import fleet.rpc.remoteApiDescriptor
import org.jetbrains.annotations.ApiStatus
@@ -1,19 +1,18 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf
package com.intellij.platform.vcs.impl.backend.shelf
import com.intellij.openapi.vcs.changes.shelf.ShelveChangesManager
import com.intellij.platform.project.ProjectId
import com.intellij.platform.project.findProject
import com.intellij.platform.rpc.backend.RemoteApiProvider
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.vcs.impl.shared.rpc.RemoteShelfApi
import com.intellij.vcs.impl.shared.rpc.UpdateStatus
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.platform.vcs.impl.shared.rpc.RemoteShelfApi
import com.intellij.platform.vcs.impl.shared.rpc.UpdateStatus
import fleet.kernel.DurableRef
import fleet.rpc.remoteApiDescriptor
import kotlinx.coroutines.CompletableDeferred
import kotlinx.coroutines.Deferred
import kotlinx.coroutines.delay
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf
package com.intellij.platform.vcs.impl.backend.shelf
import com.intellij.openapi.ListSelection
import com.intellij.openapi.application.EDT
@@ -13,8 +13,8 @@ import com.intellij.openapi.vcs.changes.patch.CreatePatchCommitExecutor
import com.intellij.openapi.vcs.changes.shelf.*
import com.intellij.pom.NavigatableAdapter
import com.intellij.util.OpenSourceUtil
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.shared.rpc.ChangeListRpc
import fleet.kernel.DurableRef
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf
package com.intellij.platform.vcs.impl.backend.shelf
import com.intellij.openapi.application.EDT
import com.intellij.openapi.components.Service
@@ -16,14 +16,21 @@ import com.intellij.openapi.vcs.changes.ui.GroupingPolicyFactoryHolder
import com.intellij.platform.kernel.withKernel
import com.intellij.platform.project.asEntity
import com.intellij.util.ui.tree.TreeUtil
import com.intellij.vcs.impl.backend.shelf.diff.BackendShelveEditorDiffPreview
import com.intellij.vcs.impl.backend.shelf.diff.ShelfDiffChangesProvider
import com.intellij.vcs.impl.backend.shelf.diff.ShelfDiffChangesState
import com.intellij.vcs.impl.backend.shelf.diff.ShelvedPreviewProcessor
import com.intellij.vcs.impl.shared.changes.GroupingUpdatePlaces
import com.intellij.vcs.impl.shared.changes.PreviewDiffSplitterComponent
import com.intellij.vcs.impl.shared.rhizome.*
import com.intellij.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.platform.vcs.impl.backend.shelf.diff.BackendShelveEditorDiffPreview
import com.intellij.platform.vcs.impl.backend.shelf.diff.ShelfDiffChangesProvider
import com.intellij.platform.vcs.impl.backend.shelf.diff.ShelfDiffChangesState
import com.intellij.platform.vcs.impl.backend.shelf.diff.ShelvedPreviewProcessor
import com.intellij.platform.vcs.impl.shared.changes.GroupingUpdatePlaces
import com.intellij.platform.vcs.impl.shared.changes.PreviewDiffSplitterComponent
import com.intellij.platform.vcs.impl.shared.rhizome.DiffSplitterEntity
import com.intellij.platform.vcs.impl.shared.rhizome.GroupingItemEntity
import com.intellij.platform.vcs.impl.shared.rhizome.GroupingItemsEntity
import com.intellij.platform.vcs.impl.shared.rhizome.NodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.SelectShelveChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelfTreeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvesTreeRootEntity
import com.intellij.platform.vcs.impl.shared.rpc.ChangeListRpc
import com.jetbrains.rhizomedb.entity
import fleet.kernel.*
import fleet.kernel.rete.Rete
@@ -34,6 +41,7 @@ import kotlinx.coroutines.flow.collectLatest
import kotlinx.coroutines.flow.debounce
import org.jetbrains.annotations.ApiStatus
import javax.swing.tree.DefaultTreeModel
import kotlin.collections.iterator
private const val UPDATE_DEBOUNCE_TIMEOUT = 200L
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf;
package com.intellij.platform.vcs.impl.backend.shelf
import com.intellij.openapi.fileTypes.FileTypeManager
import com.intellij.openapi.project.Project
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf;
package com.intellij.platform.vcs.impl.backend.shelf
import com.intellij.openapi.vcs.VcsBundle
import com.intellij.openapi.vcs.changes.shelf.ShelvedChangeList
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf;
package com.intellij.platform.vcs.impl.backend.shelf
import com.intellij.openapi.project.Project
import com.intellij.openapi.vcs.VcsBundle
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf.diff
package com.intellij.platform.vcs.impl.backend.shelf.diff
import com.intellij.diff.chains.DiffRequestProducer
import com.intellij.diff.impl.DiffEditorViewer
@@ -1,11 +1,11 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf.diff
package com.intellij.platform.vcs.impl.backend.shelf.diff
import com.intellij.openapi.vcs.changes.ChangeViewDiffRequestProcessor.Wrapper
import com.intellij.openapi.vcs.changes.shelf.ShelvedWrapper
import com.intellij.openapi.vcs.changes.ui.VcsTreeModelData
import com.intellij.util.containers.JBIterable
import com.intellij.vcs.impl.backend.shelf.ShelvedListNode
import com.intellij.platform.vcs.impl.backend.shelf.ShelvedListNode
import kotlinx.coroutines.flow.MutableStateFlow
import org.jetbrains.annotations.ApiStatus
import javax.swing.tree.TreeModel
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.backend.shelf.diff;
package com.intellij.platform.vcs.impl.backend.shelf.diff
import com.intellij.diff.FrameDiffTool
import com.intellij.diff.chains.DiffRequestProducer
@@ -14,14 +14,14 @@ import com.intellij.openapi.vcs.changes.shelf.ShelvedWrapperDiffRequestProducer
import com.intellij.openapi.vcs.changes.ui.ChangesBrowserNode
import com.intellij.platform.kernel.withKernel
import com.intellij.platform.project.asEntity
import com.intellij.platform.vcs.impl.backend.shelf.ShelfTreeHolder
import com.intellij.util.concurrency.annotations.RequiresEdt
import com.intellij.util.ui.tree.TreeUtil
import com.intellij.vcs.impl.backend.shelf.ShelfTreeHolder.Companion.ENTITY_ID_KEY
import com.intellij.vcs.impl.backend.shelf.ShelvedListNode
import com.intellij.vcs.impl.shared.changes.DiffPreviewUpdateProcessor
import com.intellij.vcs.impl.shared.rhizome.SelectShelveChangeEntity
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.backend.shelf.ShelvedListNode
import com.intellij.platform.vcs.impl.shared.changes.DiffPreviewUpdateProcessor
import com.intellij.platform.vcs.impl.shared.rhizome.SelectShelveChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.jetbrains.rhizomedb.entity
import fleet.kernel.change
import fleet.kernel.shared
@@ -73,8 +73,8 @@ class ShelvedPreviewProcessor(
val nodeToSelect = TreeUtil.findNodeWithObject(changesProvider.treeModel.root as ChangesBrowserNode<*>, change) as? ChangesBrowserNode<*>
?: return@withKernel
val changeListNode = nodeToSelect.path.firstOrNull { it is ShelvedListNode } as? ChangesBrowserNode<*> ?: return@withKernel
val changeEntity = nodeToSelect.getUserData(ENTITY_ID_KEY)?.derefOrNull() as? ShelvedChangeEntity ?: return@withKernel
val changeListEntity = changeListNode.getUserData(ENTITY_ID_KEY)?.derefOrNull() as? ShelvedChangeListEntity ?: return@withKernel
val changeEntity = nodeToSelect.getUserData(ShelfTreeHolder.Companion.ENTITY_ID_KEY)?.derefOrNull() as? ShelvedChangeEntity ?: return@withKernel
val changeListEntity = changeListNode.getUserData(ShelfTreeHolder.Companion.ENTITY_ID_KEY)?.derefOrNull() as? ShelvedChangeListEntity ?: return@withKernel
val projectEntity = project.asEntity()
change {
shared {
@@ -1,4 +1,4 @@
<idea-plugin package="com.intellij.vcs.impl.frontend">
<idea-plugin package="com.intellij.platform.vcs.impl.frontend">
<projectListeners>
</projectListeners>
<dependencies>
@@ -7,7 +7,7 @@
</dependencies>
<extensions defaultExtensionNs="com.intellij">
<ui.content.impl.toolWindowContentPostprocessor implementation="com.intellij.vcs.impl.frontend.shelf.ShelveContentReplacer"/>
<ui.content.impl.toolWindowContentPostprocessor implementation="com.intellij.platform.vcs.impl.frontend.shelf.ShelveContentReplacer"/>
</extensions>
<actions>
<group id="Frontend.Shelve.KeymapGroup" searchable="false">
@@ -15,16 +15,16 @@
</group>
<group id="Frontend.ChangesView.GroupBy" icon="AllIcons.Actions.GroupBy" popup="true"
class="com.intellij.vcs.impl.frontend.changes.actions.SelectChangesGroupingFrontendActionGroup">
class="com.intellij.platform.vcs.impl.frontend.changes.actions.SelectChangesGroupingFrontendActionGroup">
<separator key="group.ChangesView.GroupBy.text"/>
<action class="com.intellij.vcs.impl.frontend.changes.actions.GroupByDirectoryAction" id="Frontend.ChangesView.GroupBy.Directory"/>
<action class="com.intellij.vcs.impl.frontend.changes.actions.GroupByModuleAction" id="Frontend.ChangesView.GroupBy.Module"/>
<action class="com.intellij.vcs.impl.frontend.changes.actions.GroupByRepositoryAction" id="Frontend.ChangesView.GroupBy.Repository"/>
<action class="com.intellij.platform.vcs.impl.frontend.changes.actions.GroupByDirectoryAction" id="Frontend.ChangesView.GroupBy.Directory"/>
<action class="com.intellij.platform.vcs.impl.frontend.changes.actions.GroupByModuleAction" id="Frontend.ChangesView.GroupBy.Module"/>
<action class="com.intellij.platform.vcs.impl.frontend.changes.actions.GroupByRepositoryAction" id="Frontend.ChangesView.GroupBy.Repository"/>
<add-to-group group-id="Vcs.KeymapGroup"/>
</group>
<group id="ShelvedChangesToolbarFrontend">
<action id="Frontend.ChangesView.UnshelveSilently" class="com.intellij.vcs.impl.frontend.shelf.actions.UnshelveSilentlyAction"
<action id="Frontend.ChangesView.UnshelveSilently" class="com.intellij.platform.vcs.impl.frontend.shelf.actions.UnshelveSilentlyAction"
icon="AllIcons.Vcs.UnshelveSilent">
<keyboard-shortcut first-keystroke="control alt U" keymap="$default"/>
</action>
@@ -38,25 +38,25 @@
</group>
<group id="ShelvedChangesPopupMenuFrontend" popup="true">
<action id="Frontend.ShelveChanges.UnshelveWithDialog" class="com.intellij.vcs.impl.frontend.shelf.actions.UnshelveWithDialogAction"
<action id="Frontend.ShelveChanges.UnshelveWithDialog" class="com.intellij.platform.vcs.impl.frontend.shelf.actions.UnshelveWithDialogAction"
icon="AllIcons.Vcs.Unshelve">
</action>
<action id="Frontend.ChangesView.Shelf.Restore" class="com.intellij.vcs.impl.frontend.shelf.actions.RestoreShelfAction"/>
<action id="Frontend.ChangesView.ShowDiff" class="com.intellij.vcs.impl.frontend.changes.actions.ShowDiffAction"
<action id="Frontend.ChangesView.Shelf.Restore" class="com.intellij.platform.vcs.impl.frontend.shelf.actions.RestoreShelfAction"/>
<action id="Frontend.ChangesView.ShowDiff" class="com.intellij.platform.vcs.impl.frontend.changes.actions.ShowDiffAction"
icon="AllIcons.Actions.Diff"
use-shortcut-of="Diff.ShowDiff"/>
<action id="Frontend.Vcs.ShowStandaloneDiff.window" class="com.intellij.vcs.impl.frontend.shelf.actions.ShowDifInNewWindowAction" icon="AllIcons.Actions.Diff"/>
<action id="Frontend.Vcs.CompareWithLocal" class="com.intellij.vcs.impl.frontend.shelf.actions.CompareWithLocalAction"/>
<action id="Frontend.ChangesView.Shelf.CreatePatchFromChanges" class="com.intellij.vcs.impl.frontend.changes.actions.CreatePatchForShelvedChangeActionDialog"
<action id="Frontend.Vcs.ShowStandaloneDiff.window" class="com.intellij.platform.vcs.impl.frontend.shelf.actions.ShowDifInNewWindowAction" icon="AllIcons.Actions.Diff"/>
<action id="Frontend.Vcs.CompareWithLocal" class="com.intellij.platform.vcs.impl.frontend.shelf.actions.CompareWithLocalAction"/>
<action id="Frontend.ChangesView.Shelf.CreatePatchFromChanges" class="com.intellij.platform.vcs.impl.frontend.changes.actions.CreatePatchForShelvedChangeActionDialog"
icon="AllIcons.Vcs.Patch"/>
<action id="Frontend.ChangesView.Shelf.CreatePatchFromChanges.Clipboard" class="com.intellij.vcs.impl.frontend.changes.actions.CreatePatchForShelvedChangeActionClipboard"
<action id="Frontend.ChangesView.Shelf.CreatePatchFromChanges.Clipboard" class="com.intellij.platform.vcs.impl.frontend.changes.actions.CreatePatchForShelvedChangeActionClipboard"
icon="AllIcons.Vcs.Patch"/>
<action id="Frontend.ChangesView.Shelf.ImportFromPatches" class="com.intellij.vcs.impl.frontend.shelf.actions.ImportShelvesFromPatchesAction"/>
<action id="Frontend.ChangesView.Shelf.ImportFromPatches" class="com.intellij.platform.vcs.impl.frontend.shelf.actions.ImportShelvesFromPatchesAction"/>
<separator/>
<action id="Frontend.ChangesView.Shelf.Rename" class="com.intellij.vcs.impl.frontend.shelf.actions.RenameShelvedChangelistAction"/>
<action id="Frontend.Delete.Action" class="com.intellij.vcs.impl.frontend.changes.actions.FrontendDeleteAction" use-shortcut-of="$Delete"/>
<action id="Frontend.ChangesView.Shelf.Rename" class="com.intellij.platform.vcs.impl.frontend.shelf.actions.RenameShelvedChangelistAction"/>
<action id="Frontend.Delete.Action" class="com.intellij.platform.vcs.impl.frontend.changes.actions.FrontendDeleteAction" use-shortcut-of="$Delete"/>
<separator/>
</group>
<action id="Frontend.EditSource" class="com.intellij.vcs.impl.frontend.navigation.FrontendNavigateToSourceAction" use-shortcut-of="EditSource"/>
<action id="Frontend.EditSource" class="com.intellij.platform.vcs.impl.frontend.navigation.FrontendNavigateToSourceAction" use-shortcut-of="EditSource"/>
</actions>
</idea-plugin>
@@ -1,5 +1,5 @@
// Copyright 2000-2021 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.vcs.impl.frontend
package com.intellij.platform.vcs.impl.frontend
import com.intellij.DynamicBundle
import org.jetbrains.annotations.Nls
@@ -1,7 +1,8 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend
package com.intellij.platform.vcs.impl.frontend
import com.intellij.openapi.components.*
import com.intellij.openapi.project.Project
import com.intellij.util.xmlb.XmlSerializerUtil
import org.jetbrains.annotations.ApiStatus
@@ -21,6 +22,6 @@ class VcsFrontendConfiguration : PersistentStateComponent<VcsFrontendConfigurati
companion object {
@JvmStatic
fun getInstance(project: com.intellij.openapi.project.Project): VcsFrontendConfiguration = project.service()
fun getInstance(project: Project): VcsFrontendConfiguration = project.service()
}
}
@@ -1,8 +1,8 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes
package com.intellij.platform.vcs.impl.frontend.changes
import com.intellij.openapi.actionSystem.DataKey
import com.intellij.vcs.impl.shared.rhizome.NodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.NodeEntity
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -1,13 +1,14 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes
package com.intellij.platform.vcs.impl.frontend.changes
import com.intellij.openapi.components.Service
import com.intellij.openapi.components.service
import com.intellij.openapi.project.Project
import com.intellij.platform.kernel.withKernel
import com.intellij.vcs.impl.shared.rhizome.GroupingItemEntity
import com.intellij.vcs.impl.shared.rhizome.GroupingItemsEntity
import com.intellij.platform.vcs.impl.shared.rhizome.GroupingItemEntity
import com.intellij.platform.vcs.impl.shared.rhizome.GroupingItemsEntity
import fleet.kernel.rete.*
import fleet.kernel.rete.get
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.launch
import org.jetbrains.annotations.ApiStatus
@@ -1,11 +1,10 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes
package com.intellij.platform.vcs.impl.frontend.changes
import com.intellij.openapi.application.EDT
import com.intellij.openapi.project.Project
import com.intellij.vcs.impl.frontend.shelf.ShelfTreeUpdater
import com.intellij.vcs.impl.frontend.shelf.tree.ShelfTreeGroupingUpdateScheduler
import com.intellij.vcs.impl.shared.rpc.UpdateStatus
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTreeGroupingUpdateScheduler
import com.intellij.platform.vcs.impl.shared.rpc.UpdateStatus
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.channels.BufferOverflow
@@ -1,33 +1,27 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes
package com.intellij.platform.vcs.impl.frontend.changes
import com.intellij.ide.DefaultTreeExpander
import com.intellij.openapi.Disposable
import com.intellij.openapi.actionSystem.DataKey
import com.intellij.openapi.actionSystem.DataSink
import com.intellij.openapi.actionSystem.PlatformDataKeys
import com.intellij.openapi.actionSystem.UiCompatibleDataProvider
import com.intellij.openapi.project.Project
import com.intellij.openapi.util.Disposer
import com.intellij.ui.DoubleClickListener
import com.intellij.ui.treeStructure.Tree
import com.intellij.util.Processor
import com.intellij.util.concurrency.ThreadingAssertions
import com.intellij.util.ui.tree.TreeUtil
import com.intellij.vcs.impl.frontend.shelf.tree.ChangesBrowserNode
import com.intellij.vcs.impl.frontend.shelf.tree.ChangesBrowserNodeRenderer
import com.intellij.vcs.impl.frontend.shelf.tree.ChangesBrowserRootNode
import com.intellij.vcs.impl.frontend.shelf.tree.ChangesTreeFrontendCellRenderer
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangesBrowserNode
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangesBrowserNodeRenderer
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangesBrowserRootNode
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangesTreeFrontendCellRenderer
import kotlinx.coroutines.CoroutineScope
import org.jetbrains.annotations.ApiStatus
import java.awt.event.KeyAdapter
import java.awt.event.KeyEvent
import java.awt.event.KeyEvent.VK_ENTER
import java.awt.event.MouseEvent
import java.beans.PropertyChangeListener
import java.util.*
import javax.swing.event.TreeSelectionListener
import javax.swing.tree.DefaultTreeModel
/*
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes
package com.intellij.platform.vcs.impl.frontend.changes
import com.intellij.openapi.actionSystem.DataKey
import com.intellij.openapi.wm.IdeFocusManager
@@ -1,7 +1,7 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes
package com.intellij.platform.vcs.impl.frontend.changes
import com.intellij.vcs.impl.frontend.shelf.tree.ChangesBrowserNode
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangesBrowserNode
import org.jetbrains.annotations.ApiStatus
import javax.swing.tree.DefaultTreeModel
import javax.swing.tree.TreeNode
@@ -1,8 +1,8 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes
package com.intellij.platform.vcs.impl.frontend.changes
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangesBrowserNode
import com.intellij.util.containers.JBIterable
import com.intellij.vcs.impl.frontend.shelf.tree.ChangesBrowserNode
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -1,15 +1,15 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes.actions
package com.intellij.platform.vcs.impl.frontend.changes.actions
import com.intellij.openapi.actionSystem.ActionUpdateThread
import com.intellij.openapi.actionSystem.AnAction
import com.intellij.openapi.actionSystem.AnActionEvent
import com.intellij.openapi.actionSystem.CommonDataKeys
import com.intellij.util.containers.ContainerUtil
import com.intellij.vcs.impl.frontend.changes.CHANGE_LISTS_KEY
import com.intellij.vcs.impl.frontend.changes.ChangeList
import com.intellij.vcs.impl.frontend.shelf.ShelfService
import com.intellij.vcs.impl.frontend.shelf.tree.ShelfTree
import com.intellij.platform.vcs.impl.frontend.changes.CHANGE_LISTS_KEY
import com.intellij.platform.vcs.impl.frontend.changes.ChangeList
import com.intellij.platform.vcs.impl.frontend.shelf.ShelfService
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTree
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes.actions
package com.intellij.platform.vcs.impl.frontend.changes.actions
import com.intellij.ide.actions.DeleteAction
import org.jetbrains.annotations.ApiStatus
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes.actions
package com.intellij.platform.vcs.impl.frontend.changes.actions
import com.intellij.openapi.actionSystem.ActionUpdateThread
import com.intellij.openapi.actionSystem.AnActionEvent
@@ -9,9 +9,9 @@ import com.intellij.openapi.project.DumbAware
import com.intellij.platform.kernel.withLastKnownDb
import com.intellij.platform.project.ProjectEntity
import com.intellij.platform.project.projectId
import com.intellij.vcs.impl.frontend.changes.ChangesGroupingStatesHolder
import com.intellij.vcs.impl.frontend.changes.ChangesTree
import com.intellij.vcs.impl.shared.rhizome.RepositoryCountEntity
import com.intellij.platform.vcs.impl.frontend.changes.ChangesGroupingStatesHolder
import com.intellij.platform.vcs.impl.frontend.changes.ChangesTree
import com.intellij.platform.vcs.impl.shared.rhizome.RepositoryCountEntity
import com.jetbrains.rhizomedb.entities
import com.jetbrains.rhizomedb.entity
import org.jetbrains.annotations.ApiStatus
@@ -1,11 +1,11 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes.actions
package com.intellij.platform.vcs.impl.frontend.changes.actions
import com.intellij.openapi.actionSystem.ActionUpdateThread
import com.intellij.openapi.actionSystem.AnAction
import com.intellij.openapi.actionSystem.AnActionEvent
import com.intellij.vcs.impl.frontend.changes.CHANGE_LISTS_KEY
import com.intellij.vcs.impl.frontend.changes.EDITOR_TAB_DIFF_PREVIEW
import com.intellij.platform.vcs.impl.frontend.changes.CHANGE_LISTS_KEY
import com.intellij.platform.vcs.impl.frontend.changes.EDITOR_TAB_DIFF_PREVIEW
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -1,13 +1,13 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes.tree
package com.intellij.platform.vcs.impl.frontend.changes.tree
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangesBrowserNodeRenderer
import com.intellij.ui.SimpleTextAttributes
import com.intellij.util.FontUtil
import com.intellij.util.PlatformIcons
import com.intellij.vcs.impl.frontend.changes.findFileStatusById
import com.intellij.vcs.impl.frontend.shelf.tree.ChangesBrowserNodeRenderer
import com.intellij.vcs.impl.frontend.shelf.tree.EntityChangesBrowserNode
import com.intellij.vcs.impl.shared.rhizome.FilePathNodeEntity
import com.intellij.platform.vcs.impl.frontend.changes.findFileStatusById
import com.intellij.platform.vcs.impl.frontend.shelf.tree.EntityChangesBrowserNode
import com.intellij.platform.vcs.impl.shared.rhizome.FilePathNodeEntity
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.annotations.Nls
@@ -1,12 +1,12 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes.tree
package com.intellij.platform.vcs.impl.frontend.changes.tree
import com.intellij.openapi.module.ModuleType
import com.intellij.openapi.module.ModuleTypeManager
import com.intellij.ui.SimpleTextAttributes
import com.intellij.vcs.impl.frontend.shelf.tree.ChangesBrowserNodeRenderer
import com.intellij.vcs.impl.frontend.shelf.tree.EntityChangesBrowserNode
import com.intellij.vcs.impl.shared.rhizome.ModuleNodeEntity
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangesBrowserNodeRenderer
import com.intellij.platform.vcs.impl.frontend.shelf.tree.EntityChangesBrowserNode
import com.intellij.platform.vcs.impl.shared.rhizome.ModuleNodeEntity
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.annotations.Nls
@@ -1,6 +1,7 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.changes.tree
package com.intellij.platform.vcs.impl.frontend.changes.tree
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangesBrowserNodeRenderer
import com.intellij.ui.JBColor
import com.intellij.ui.JBColor.namedColor
import com.intellij.ui.SimpleTextAttributes
@@ -11,10 +12,9 @@ import com.intellij.util.ui.CheckboxIcon
import com.intellij.util.ui.ColorIcon
import com.intellij.util.ui.JBUI.insets
import com.intellij.util.ui.UIUtil.getTreeBackground
import com.intellij.vcs.impl.frontend.changes.getBranchPresentationBackground
import com.intellij.vcs.impl.frontend.shelf.tree.ChangesBrowserNodeRenderer
import com.intellij.vcs.impl.frontend.shelf.tree.EntityChangesBrowserNode
import com.intellij.vcs.impl.shared.rhizome.RepositoryNodeEntity
import com.intellij.platform.vcs.impl.frontend.changes.getBranchPresentationBackground
import com.intellij.platform.vcs.impl.frontend.shelf.tree.EntityChangesBrowserNode
import com.intellij.platform.vcs.impl.shared.rhizome.RepositoryNodeEntity
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.annotations.Nls
import java.awt.Color
@@ -1,19 +1,16 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
@file:ApiStatus.Internal
package com.intellij.vcs.impl.frontend.changes
package com.intellij.platform.vcs.impl.frontend.changes
import com.intellij.openapi.vcs.FileStatus
import com.intellij.platform.kernel.KernelService
import com.intellij.ui.ColorUtil
import com.intellij.ui.JBColor
import com.intellij.ui.JBColor.namedColor
import com.jetbrains.rhizomedb.asOf
import fleet.kernel.DbSource
import fleet.kernel.rete.Rete
import kotlinx.coroutines.ExperimentalCoroutinesApi
import org.jetbrains.annotations.ApiStatus
import java.awt.Color
import javax.swing.UIManager
import kotlin.collections.get
fun findFileStatusById(id: String?): FileStatus? {
return FILE_STATUS_MAPPING[id]
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.navigation
package com.intellij.platform.vcs.impl.frontend.navigation
import com.intellij.openapi.actionSystem.ActionUpdateThread
import com.intellij.openapi.actionSystem.AnAction
@@ -1,11 +1,11 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.navigation
package com.intellij.platform.vcs.impl.frontend.navigation
import com.intellij.openapi.project.Project
import com.intellij.pom.NavigatableAdapter
import com.intellij.vcs.impl.frontend.shelf.ShelfService
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.frontend.shelf.ShelfService
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -1,13 +1,28 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
@file:ApiStatus.Internal
package com.intellij.vcs.impl.frontend.shelf
package com.intellij.platform.vcs.impl.frontend.shelf
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangesBrowserNode
import com.intellij.ui.SimpleTextAttributes
import com.intellij.vcs.impl.frontend.changes.tree.FilePathTreeNode
import com.intellij.vcs.impl.frontend.changes.tree.ModuleTreeNode
import com.intellij.vcs.impl.frontend.changes.tree.RepositoryTreeNode
import com.intellij.vcs.impl.frontend.shelf.tree.*
import com.intellij.vcs.impl.shared.rhizome.*
import com.intellij.platform.vcs.impl.frontend.changes.tree.FilePathTreeNode
import com.intellij.platform.vcs.impl.frontend.changes.tree.ModuleTreeNode
import com.intellij.platform.vcs.impl.frontend.changes.tree.RepositoryTreeNode
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangeSelectionIdentifier
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangelistSelectionIdentifier
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ChangesBrowserRootNode
import com.intellij.platform.vcs.impl.frontend.shelf.tree.SELECTION_IDENTIFIER_KEY
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelvedChangeListNode
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelvedChangeNode
import com.intellij.platform.vcs.impl.frontend.shelf.tree.TagNode
import com.intellij.platform.vcs.impl.shared.rhizome.FilePathNodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ModuleNodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.NodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.RepositoryNodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvesTreeRootEntity
import com.intellij.platform.vcs.impl.shared.rhizome.TagNodeEntity
import org.jetbrains.annotations.ApiStatus
import javax.swing.tree.DefaultMutableTreeNode
import kotlin.reflect.KClass
@@ -1,8 +1,8 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf
package com.intellij.platform.vcs.impl.frontend.shelf
import com.intellij.vcs.impl.frontend.shelf.tree.ShelfTree
import com.intellij.vcs.impl.frontend.shelf.tree.ShelvedChangeListNode
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTree
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelvedChangeListNode
import org.jetbrains.annotations.ApiStatus
import java.awt.event.MouseEvent
import java.util.*
@@ -1,21 +1,21 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
@file:ApiStatus.Internal
package com.intellij.vcs.impl.frontend.shelf
package com.intellij.platform.vcs.impl.frontend.shelf
import com.intellij.openapi.components.Service
import com.intellij.openapi.project.Project
import com.intellij.platform.kernel.withKernel
import com.intellij.platform.project.asEntity
import com.intellij.platform.project.projectId
import com.intellij.vcs.impl.frontend.changes.ChangeList
import com.intellij.vcs.impl.shared.rhizome.DiffSplitterEntity
import com.intellij.vcs.impl.shared.rhizome.SelectShelveChangeEntity
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.vcs.impl.shared.rpc.RemoteShelfActionsApi
import com.intellij.vcs.impl.shared.rpc.RemoteShelfApi
import com.intellij.platform.vcs.impl.frontend.changes.ChangeList
import com.intellij.platform.vcs.impl.shared.rhizome.DiffSplitterEntity
import com.intellij.platform.vcs.impl.shared.rhizome.SelectShelveChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.platform.vcs.impl.shared.rpc.RemoteShelfActionsApi
import com.intellij.platform.vcs.impl.shared.rpc.RemoteShelfApi
import com.jetbrains.rhizomedb.entity
import fleet.kernel.change
import fleet.kernel.ref
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf
package com.intellij.platform.vcs.impl.frontend.shelf
import com.intellij.openapi.actionSystem.*
import com.intellij.openapi.application.EDT
@@ -15,13 +15,13 @@ import com.intellij.ui.ScrollPaneFactory
import com.intellij.ui.components.panels.Wrapper
import com.intellij.util.ui.JBUI
import com.intellij.util.ui.components.BorderLayoutPanel
import com.intellij.vcs.impl.frontend.VcsFrontendConfiguration
import com.intellij.vcs.impl.frontend.changes.EDITOR_TAB_DIFF_PREVIEW
import com.intellij.vcs.impl.frontend.changes.actions.SHOW_DIFF_ACTION_ID
import com.intellij.vcs.impl.frontend.navigation.FrontendNavigateToSourceAction
import com.intellij.vcs.impl.frontend.shelf.tree.ShelfTree
import com.intellij.vcs.impl.frontend.shelf.tree.ShelfTreeEditorDiffPreview
import com.intellij.vcs.impl.shared.changes.PreviewDiffSplitterComponent
import com.intellij.platform.vcs.impl.frontend.VcsFrontendConfiguration
import com.intellij.platform.vcs.impl.frontend.changes.EDITOR_TAB_DIFF_PREVIEW
import com.intellij.platform.vcs.impl.frontend.changes.actions.SHOW_DIFF_ACTION_ID
import com.intellij.platform.vcs.impl.frontend.navigation.FrontendNavigateToSourceAction
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTree
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTreeEditorDiffPreview
import com.intellij.platform.vcs.impl.shared.changes.PreviewDiffSplitterComponent
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf
package com.intellij.platform.vcs.impl.frontend.shelf
import com.intellij.openapi.application.EDT
import com.intellij.openapi.components.Service
@@ -8,20 +8,23 @@ import com.intellij.openapi.util.Key
import com.intellij.platform.kernel.withKernel
import com.intellij.platform.project.projectId
import com.intellij.util.ui.tree.TreeUtil
import com.intellij.vcs.impl.frontend.changes.ChangesTreeModel
import com.intellij.vcs.impl.frontend.shelf.tree.*
import com.intellij.vcs.impl.shared.rhizome.ShelfTreeEntity
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.vcs.impl.shared.rpc.RemoteShelfApi
import com.intellij.platform.vcs.impl.frontend.changes.ChangesTreeModel
import com.intellij.platform.vcs.impl.frontend.shelf.tree.EntityChangesBrowserNode
import com.intellij.platform.vcs.impl.frontend.shelf.tree.SELECTION_IDENTIFIER_KEY
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTree
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelvedChangeListNode
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelvedChangeNode
import com.intellij.platform.vcs.impl.shared.rhizome.ShelfTreeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.platform.vcs.impl.shared.rpc.RemoteShelfApi
import fleet.kernel.ref
import fleet.kernel.rete.collectLatest
import fleet.kernel.rete.each
import kotlinx.coroutines.*
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.collectLatest
import kotlinx.coroutines.flow.debounce
import org.jetbrains.annotations.ApiStatus
import java.util.concurrent.atomic.AtomicInteger
import javax.swing.tree.DefaultMutableTreeNode
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf
package com.intellij.platform.vcs.impl.frontend.shelf
import com.intellij.openapi.project.Project
import com.intellij.openapi.util.registry.Registry
@@ -11,7 +11,7 @@ import com.intellij.ui.content.Content
import com.intellij.ui.content.ContentManagerEvent
import com.intellij.ui.content.ContentManagerListener
import com.intellij.ui.content.impl.ToolWindowContentPostProcessor
import com.intellij.vcs.impl.frontend.shelf.ShelfTreeUpdater.Companion.CONTENT_PROVIDER_SUPPLIER_KEY
import com.intellij.platform.vcs.impl.frontend.shelf.ShelfTreeUpdater.Companion.CONTENT_PROVIDER_SUPPLIER_KEY
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -1,13 +1,13 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.actions
package com.intellij.platform.vcs.impl.frontend.shelf.actions
import com.intellij.openapi.actionSystem.ActionUpdateThread
import com.intellij.openapi.actionSystem.AnAction
import com.intellij.openapi.actionSystem.AnActionEvent
import com.intellij.openapi.project.DumbAware
import com.intellij.vcs.impl.frontend.shelf.ShelfService
import com.intellij.vcs.impl.frontend.shelf.tree.ShelfTree
import com.intellij.vcs.impl.frontend.shelf.tree.ShelfTree.Companion.GROUPED_CHANGES_KEY
import com.intellij.platform.vcs.impl.frontend.shelf.ShelfService
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTree
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTree.Companion.GROUPED_CHANGES_KEY
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -1,9 +1,9 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.actions
package com.intellij.platform.vcs.impl.frontend.shelf.actions
import com.intellij.openapi.actionSystem.AnAction
import com.intellij.openapi.actionSystem.AnActionEvent
import com.intellij.vcs.impl.frontend.shelf.ShelfService
import com.intellij.platform.vcs.impl.frontend.shelf.ShelfService
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -1,18 +1,18 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.actions
package com.intellij.platform.vcs.impl.frontend.shelf.actions
import com.intellij.openapi.actionSystem.ActionUpdateThread
import com.intellij.openapi.actionSystem.AnAction
import com.intellij.openapi.actionSystem.AnActionEvent
import com.intellij.vcs.impl.frontend.shelf.ShelfTreeUpdater
import com.intellij.vcs.impl.frontend.shelf.tree.ShelfTree.Companion.SELECTED_CHANGELISTS_KEY
import com.intellij.platform.vcs.impl.frontend.shelf.ShelfTreeUpdater
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTree
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
class RenameShelvedChangelistAction : AnAction() {
override fun actionPerformed(e: AnActionEvent) {
val project = e.project ?: return
val changeList = SELECTED_CHANGELISTS_KEY.getData(e.dataContext)?.singleOrNull() ?: return
val changeList = ShelfTree.Companion.SELECTED_CHANGELISTS_KEY.getData(e.dataContext)?.singleOrNull() ?: return
ShelfTreeUpdater.getInstance(project).startEditing(changeList)
}
@@ -21,6 +21,6 @@ class RenameShelvedChangelistAction : AnAction() {
}
override fun update(e: AnActionEvent) {
e.presentation.isEnabled = SELECTED_CHANGELISTS_KEY.getData(e.dataContext)?.size == 1
e.presentation.isEnabled = ShelfTree.Companion.SELECTED_CHANGELISTS_KEY.getData(e.dataContext)?.size == 1
}
}
@@ -1,23 +1,23 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.actions
package com.intellij.platform.vcs.impl.frontend.shelf.actions
import com.intellij.openapi.actionSystem.ActionUpdateThread
import com.intellij.openapi.actionSystem.AnAction
import com.intellij.openapi.actionSystem.AnActionEvent
import com.intellij.vcs.impl.frontend.shelf.ShelfService
import com.intellij.vcs.impl.frontend.shelf.tree.ShelfTree.Companion.SELECTED_DELETED_CHANGELISTS_KEY
import com.intellij.platform.vcs.impl.frontend.shelf.ShelfService
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTree
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
class RestoreShelfAction : AnAction() {
override fun actionPerformed(e: AnActionEvent) {
val project = e.project ?: return
val changeLists = SELECTED_DELETED_CHANGELISTS_KEY.getData(e.dataContext) ?: return
val changeLists = ShelfTree.Companion.SELECTED_DELETED_CHANGELISTS_KEY.getData(e.dataContext) ?: return
ShelfService.getInstance(project).restoreShelves(changeLists)
}
override fun update(e: AnActionEvent) {
e.presentation.isEnabled = SELECTED_DELETED_CHANGELISTS_KEY.getData(e.dataContext)?.isNotEmpty() == true
e.presentation.isEnabled = ShelfTree.Companion.SELECTED_DELETED_CHANGELISTS_KEY.getData(e.dataContext)?.isNotEmpty() == true
}
override fun getActionUpdateThread(): ActionUpdateThread {
@@ -1,12 +1,12 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.actions
package com.intellij.platform.vcs.impl.frontend.shelf.actions
import com.intellij.openapi.actionSystem.ActionUpdateThread
import com.intellij.openapi.actionSystem.AnAction
import com.intellij.openapi.actionSystem.AnActionEvent
import com.intellij.vcs.impl.frontend.changes.CHANGE_LISTS_KEY
import com.intellij.vcs.impl.frontend.shelf.ShelfService
import com.intellij.vcs.impl.frontend.shelf.tree.ShelfTree.Companion.GROUPED_CHANGES_KEY
import com.intellij.platform.vcs.impl.frontend.changes.CHANGE_LISTS_KEY
import com.intellij.platform.vcs.impl.frontend.shelf.ShelfService
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTree
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -14,7 +14,7 @@ abstract class ShowStandaloneDiffAction(private val withLocal: Boolean) : AnActi
override fun actionPerformed(e: AnActionEvent) {
val project = getEventProject(e) ?: return
val dataContext = e.dataContext
val selectedChangelists = GROUPED_CHANGES_KEY.getData(dataContext) ?: return
val selectedChangelists = ShelfTree.Companion.GROUPED_CHANGES_KEY.getData(dataContext) ?: return
ShelfService.getInstance(project).compareWithLocal(selectedChangelists, withLocal)
}
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree;
package com.intellij.platform.vcs.impl.frontend.shelf.tree;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.util.Key;
@@ -9,7 +9,7 @@ import com.intellij.ui.ColoredTreeCellRenderer;
import com.intellij.ui.SimpleTextAttributes;
import com.intellij.util.containers.JBIterable;
import com.intellij.util.ui.tree.TreeUtil;
import com.intellij.vcs.impl.frontend.VcsFrontendBundle;
import com.intellij.platform.vcs.impl.frontend.VcsFrontendBundle;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.Nls;
import org.jetbrains.annotations.NotNull;
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree;
package com.intellij.platform.vcs.impl.frontend.shelf.tree;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.BooleanGetter;
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree
package com.intellij.platform.vcs.impl.frontend.shelf.tree
import org.jetbrains.annotations.ApiStatus
@@ -1,12 +1,12 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree
package com.intellij.platform.vcs.impl.frontend.shelf.tree
import com.intellij.openapi.actionSystem.ActionManager
import com.intellij.ui.CellRendererPanel
import com.intellij.util.ui.ThreeStateCheckBox
import com.intellij.util.ui.UpdateScaleHelper
import com.intellij.util.ui.accessibility.AccessibleContextDelegateWithContextMenu
import com.intellij.vcs.impl.frontend.changes.ChangesTree
import com.intellij.platform.vcs.impl.frontend.changes.ChangesTree
import org.jetbrains.annotations.ApiStatus
import java.awt.*
import javax.accessibility.*
@@ -1,11 +1,9 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree
package com.intellij.platform.vcs.impl.frontend.shelf.tree
import com.intellij.platform.kernel.withKernel
import com.intellij.platform.kernel.withLastKnownDb
import com.intellij.vcs.impl.shared.rhizome.NodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.NodeEntity
import com.jetbrains.rhizomedb.exists
import kotlinx.coroutines.runBlocking
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.annotations.Nls
import javax.swing.JTree
@@ -1,9 +1,9 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree
package com.intellij.platform.vcs.impl.frontend.shelf.tree
import com.intellij.openapi.util.Key
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import org.jetbrains.annotations.ApiStatus
/**
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree
package com.intellij.platform.vcs.impl.frontend.shelf.tree
import com.intellij.ide.DeleteProvider
import com.intellij.openapi.actionSystem.CommonDataKeys.NAVIGATABLE_ARRAY
@@ -9,13 +9,17 @@ import com.intellij.openapi.actionSystem.DataSink
import com.intellij.openapi.actionSystem.PlatformDataKeys
import com.intellij.openapi.project.Project
import com.intellij.platform.kernel.withLastKnownDb
import com.intellij.platform.vcs.impl.frontend.changes.CHANGE_LISTS_KEY
import com.intellij.platform.vcs.impl.frontend.changes.ChangeList
import com.intellij.platform.vcs.impl.frontend.changes.ChangesTree
import com.intellij.platform.vcs.impl.frontend.changes.ExactlySelectedData
import com.intellij.platform.vcs.impl.frontend.changes.SelectedData
import com.intellij.ui.TreeSpeedSearch
import com.intellij.util.ui.tree.TreeUtil
import com.intellij.vcs.impl.frontend.changes.*
import com.intellij.vcs.impl.frontend.navigation.FrontendShelfNavigatable
import com.intellij.vcs.impl.shared.changes.GroupingUpdatePlaces
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.frontend.navigation.FrontendShelfNavigatable
import com.intellij.platform.vcs.impl.shared.changes.GroupingUpdatePlaces
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import kotlinx.coroutines.CoroutineScope
import org.jetbrains.annotations.ApiStatus
import javax.swing.tree.TreePath
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree
package com.intellij.platform.vcs.impl.frontend.shelf.tree
import com.intellij.openapi.application.EDT
import com.intellij.openapi.project.Project
@@ -7,13 +7,13 @@ import com.intellij.platform.kernel.withKernel
import com.intellij.platform.project.projectId
import com.intellij.platform.util.coroutines.sync.OverflowSemaphore
import com.intellij.util.ui.tree.TreeUtil
import com.intellij.vcs.impl.frontend.changes.ChangesTreeEditorDiffPreview
import com.intellij.vcs.impl.frontend.changes.SelectedData
import com.intellij.vcs.impl.frontend.shelf.subscribeToShelfTreeSelectionChanged
import com.intellij.vcs.impl.shared.rhizome.SelectShelveChangeEntity
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.vcs.impl.shared.rpc.RemoteShelfApi
import com.intellij.platform.vcs.impl.frontend.changes.ChangesTreeEditorDiffPreview
import com.intellij.platform.vcs.impl.frontend.changes.SelectedData
import com.intellij.platform.vcs.impl.frontend.shelf.subscribeToShelfTreeSelectionChanged
import com.intellij.platform.vcs.impl.shared.rhizome.SelectShelveChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.platform.vcs.impl.shared.rpc.ChangeListRpc
import com.intellij.platform.vcs.impl.shared.rpc.RemoteShelfApi
import fleet.kernel.ref
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
@@ -1,13 +1,13 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree
package com.intellij.platform.vcs.impl.frontend.shelf.tree
import com.intellij.openapi.components.Service
import com.intellij.openapi.components.service
import com.intellij.openapi.project.Project
import com.intellij.platform.project.projectId
import com.intellij.platform.util.coroutines.sync.OverflowSemaphore
import com.intellij.vcs.impl.shared.rpc.RemoteShelfApi
import com.intellij.vcs.impl.shared.rpc.UpdateStatus
import com.intellij.platform.vcs.impl.shared.rpc.RemoteShelfApi
import com.intellij.platform.vcs.impl.shared.rpc.UpdateStatus
import kotlinx.coroutines.channels.BufferOverflow
import org.jetbrains.annotations.ApiStatus
@@ -1,12 +1,12 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree
package com.intellij.platform.vcs.impl.frontend.shelf.tree
import com.intellij.ide.DeleteProvider
import com.intellij.openapi.actionSystem.ActionUpdateThread
import com.intellij.openapi.actionSystem.DataContext
import com.intellij.openapi.project.Project
import com.intellij.vcs.impl.frontend.shelf.ShelfService
import com.intellij.vcs.impl.frontend.shelf.tree.ShelfTree.Companion.GROUPED_CHANGES_KEY
import com.intellij.platform.vcs.impl.frontend.shelf.ShelfService
import com.intellij.platform.vcs.impl.frontend.shelf.tree.ShelfTree.Companion.GROUPED_CHANGES_KEY
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -1,11 +1,11 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree
package com.intellij.platform.vcs.impl.frontend.shelf.tree
import com.intellij.ui.SimpleTextAttributes
import com.intellij.util.FontUtil
import com.intellij.util.text.DateFormatUtil
import com.intellij.vcs.impl.frontend.VcsFrontendBundle
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.frontend.VcsFrontendBundle
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.annotations.Nls
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree
package com.intellij.platform.vcs.impl.frontend.shelf.tree
import com.intellij.openapi.fileTypes.FileTypeManager
import com.intellij.openapi.util.io.FileUtil
@@ -8,9 +8,9 @@ import com.intellij.openapi.vcs.FileStatus
import com.intellij.ui.SimpleTextAttributes
import com.intellij.util.FontUtil
import com.intellij.util.PathUtil
import com.intellij.vcs.impl.frontend.VcsFrontendBundle
import com.intellij.vcs.impl.frontend.changes.findFileStatusById
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.platform.vcs.impl.frontend.VcsFrontendBundle
import com.intellij.platform.vcs.impl.frontend.changes.findFileStatusById
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeEntity
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.annotations.Nls
@@ -1,8 +1,8 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.frontend.shelf.tree
package com.intellij.platform.vcs.impl.frontend.shelf.tree
import com.intellij.ui.SimpleTextAttributes
import com.intellij.vcs.impl.shared.rhizome.TagNodeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.TagNodeEntity
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.annotations.Nls
@@ -14,9 +14,11 @@
</stringArguments>
<arrayArguments>
<arrayArg name="pluginClasspaths">
<arg>$KOTLIN_BUNDLED$/lib/kotlinx-serialization-compiler-plugin.jar</arg>
<arg>$MAVEN_REPOSITORY$/com/jetbrains/fleet/rpc-compiler-plugin/2.1.0-0.4/rpc-compiler-plugin-2.1.0-0.4.jar</arg>
<arg>$MAVEN_REPOSITORY$/jetbrains/fleet/rhizomedb-compiler-plugin/2.1.0-0.2/rhizomedb-compiler-plugin-2.1.0-0.2.jar</arg>
<args>
<arg>$KOTLIN_BUNDLED$/lib/kotlinx-serialization-compiler-plugin.jar</arg>
<arg>$MAVEN_REPOSITORY$/com/jetbrains/fleet/rpc-compiler-plugin/2.1.0-0.4/rpc-compiler-plugin-2.1.0-0.4.jar</arg>
<arg>$MAVEN_REPOSITORY$/jetbrains/fleet/rhizomedb-compiler-plugin/2.1.0-0.2/rhizomedb-compiler-plugin-2.1.0-0.2.jar</arg>
</args>
</arrayArg>
<arrayArg name="pluginOptions" />
</arrayArguments>
@@ -80,7 +82,5 @@
<orderEntry type="module" module-name="intellij.platform.kernel" />
<orderEntry type="module" module-name="intellij.platform.vcs.impl.shared" />
<orderEntry type="library" name="jgoodies-forms" level="project" />
<orderEntry type="library" name="kotlinx-serialization-core" level="project" />
<orderEntry type="library" name="kotlinx-serialization-json" level="project" />
</component>
</module>
@@ -16,8 +16,8 @@
<arrayArg name="pluginClasspaths">
<args>
<arg>$KOTLIN_BUNDLED$/lib/kotlinx-serialization-compiler-plugin.jar</arg>
<arg>$MAVEN_REPOSITORY$/jetbrains/fleet/rhizomedb-compiler-plugin/2.1.0-0.2/rhizomedb-compiler-plugin-2.1.0-0.2.jar</arg>
<arg>$MAVEN_REPOSITORY$/com/jetbrains/fleet/rpc-compiler-plugin/2.1.0-0.4/rpc-compiler-plugin-2.1.0-0.4.jar</arg>
<arg>$MAVEN_REPOSITORY$/jetbrains/fleet/rhizomedb-compiler-plugin/2.1.0-0.2/rhizomedb-compiler-plugin-2.1.0-0.2.jar</arg>
</args>
</arrayArg>
<arrayArg name="pluginOptions" />
@@ -1,9 +1,9 @@
<idea-plugin package="com.intellij.vcs.impl.shared">
<idea-plugin package="com.intellij.platform.vcs.impl.shared">
<extensions defaultExtensionNs="com.intellij">
<platform.entityTypes implementation="com.intellij.vcs.impl.shared.rhizome.ShelfDiffEntityTypeProvider"/>
<platform.entityTypes implementation="com.intellij.vcs.impl.shared.rhizome.GroupingItemTypeProvider"/>
<platform.entityTypes implementation="com.intellij.vcs.impl.shared.rhizome.ShelfNodesEntityTypeProvider"/>
<platform.entityTypes implementation="com.intellij.vcs.impl.shared.rhizome.VcsEntityTypeProvider"/>
<platform.entityTypes implementation="com.intellij.platform.vcs.impl.shared.rhizome.ShelfDiffEntityTypeProvider"/>
<platform.entityTypes implementation="com.intellij.platform.vcs.impl.shared.rhizome.GroupingItemTypeProvider"/>
<platform.entityTypes implementation="com.intellij.platform.vcs.impl.shared.rhizome.ShelfNodesEntityTypeProvider"/>
<platform.entityTypes implementation="com.intellij.platform.vcs.impl.shared.rhizome.VcsEntityTypeProvider"/>
<registryKey key="vcs.shelves.rhizome.enabled" defaultValue="false" restartRequired="true"
description="New vcs shelves split to frontend and backend using Rhizome and rpc"/>
</extensions>
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.shared.changes
package com.intellij.platform.vcs.impl.shared.changes
import com.intellij.util.concurrency.annotations.RequiresEdt
import javax.swing.JComponent
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.shared.changes
package com.intellij.platform.vcs.impl.shared.changes
import org.jetbrains.annotations.ApiStatus
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.shared.changes
package com.intellij.platform.vcs.impl.shared.changes
import com.intellij.openapi.vcs.changes.DiffPreview
import com.intellij.ui.OnePixelSplitter
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.shared.rhizome
package com.intellij.platform.vcs.impl.shared.rhizome
import com.intellij.platform.kernel.EntityTypeProvider
import com.jetbrains.rhizomedb.*
@@ -1,9 +1,9 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.shared.rhizome
package com.intellij.platform.vcs.impl.shared.rhizome
import com.intellij.platform.kernel.EntityTypeProvider
import com.intellij.platform.project.ProjectEntity
import com.intellij.vcs.impl.shared.changes.PreviewDiffSplitterComponent
import com.intellij.platform.vcs.impl.shared.changes.PreviewDiffSplitterComponent
import com.jetbrains.rhizomedb.EID
import com.jetbrains.rhizomedb.Entity
import com.jetbrains.rhizomedb.EntityType
@@ -1,9 +1,10 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.shared.rhizome
package com.intellij.platform.vcs.impl.shared.rhizome
import com.intellij.platform.kernel.EntityTypeProvider
import com.intellij.platform.project.ProjectEntity
import com.jetbrains.rhizomedb.*
import com.jetbrains.rhizomedb.get
import fleet.kernel.DurableEntityType
import kotlinx.serialization.Serializable
import kotlinx.serialization.builtins.serializer
@@ -1,5 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.shared.rhizome
package com.intellij.platform.vcs.impl.shared.rhizome
import com.intellij.platform.kernel.EntityTypeProvider
import com.intellij.platform.project.ProjectEntity
@@ -1,9 +1,9 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.shared.rpc
package com.intellij.platform.vcs.impl.shared.rpc
import com.intellij.platform.project.ProjectId
import com.intellij.platform.rpc.RemoteApiProviderService
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import fleet.kernel.DurableRef
import fleet.rpc.RemoteApi
import fleet.rpc.Rpc
@@ -1,10 +1,10 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.vcs.impl.shared.rpc
package com.intellij.platform.vcs.impl.shared.rpc
import com.intellij.platform.project.ProjectId
import com.intellij.platform.rpc.RemoteApiProviderService
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeEntity
import com.intellij.platform.vcs.impl.shared.rhizome.ShelvedChangeListEntity
import fleet.kernel.DurableRef
import fleet.rpc.RemoteApi
import fleet.rpc.Rpc
@@ -29,7 +29,7 @@ import com.intellij.openapi.vcs.changes.ui.PresentableChange;
import com.intellij.util.concurrency.annotations.RequiresEdt;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.containers.JBIterable;
import com.intellij.vcs.impl.shared.changes.DiffPreviewUpdateProcessor;
import com.intellij.platform.vcs.impl.shared.changes.DiffPreviewUpdateProcessor;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.Nls;
import org.jetbrains.annotations.NotNull;
@@ -68,7 +68,7 @@ import com.intellij.util.ui.tree.TreeUtil;
import com.intellij.util.xmlb.annotations.Attribute;
import com.intellij.util.xmlb.annotations.XCollection;
import com.intellij.vcs.commit.*;
import com.intellij.vcs.impl.shared.changes.PreviewDiffSplitterComponent;
import com.intellij.platform.vcs.impl.shared.changes.PreviewDiffSplitterComponent;
import com.intellij.vcsUtil.VcsUtil;
import io.opentelemetry.api.trace.Span;
import io.opentelemetry.api.trace.Tracer;
@@ -30,7 +30,7 @@ import com.intellij.util.IJSwingUtilities
import com.intellij.util.Processor
import com.intellij.util.ui.update.DisposableUpdate
import com.intellij.util.ui.update.MergingUpdateQueue
import com.intellij.vcs.impl.shared.changes.DiffPreviewUpdateProcessor
import com.intellij.platform.vcs.impl.shared.changes.DiffPreviewUpdateProcessor
import kotlinx.coroutines.Runnable
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.annotations.Nls
@@ -5,7 +5,7 @@ import com.intellij.diff.impl.CacheDiffRequestProcessor
import com.intellij.diff.requests.NoDiffRequest
import com.intellij.openapi.project.Project;
import com.intellij.util.ui.UIUtil
import com.intellij.vcs.impl.shared.changes.DiffPreviewUpdateProcessor
import com.intellij.platform.vcs.impl.shared.changes.DiffPreviewUpdateProcessor
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -25,7 +25,6 @@ import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.fileEditor.FileDocumentManager;
import com.intellij.openapi.fileTypes.FileTypeManager;
import com.intellij.openapi.progress.util.BackgroundTaskUtil;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.SimpleToolWindowPanel;
import com.intellij.openapi.util.Disposer;
@@ -58,8 +57,8 @@ import com.intellij.util.ui.JBUI;
import com.intellij.util.ui.tree.TreeUtil;
import com.intellij.util.ui.update.MergingUpdateQueue;
import com.intellij.util.ui.update.Update;
import com.intellij.vcs.impl.shared.changes.DiffPreviewUpdateProcessor;
import com.intellij.vcs.impl.shared.changes.PreviewDiffSplitterComponent;
import com.intellij.platform.vcs.impl.shared.changes.DiffPreviewUpdateProcessor;
import com.intellij.platform.vcs.impl.shared.changes.PreviewDiffSplitterComponent;
import kotlinx.coroutines.CoroutineScope;
import one.util.streamex.StreamEx;
import org.jetbrains.annotations.*;
@@ -79,7 +78,6 @@ import java.util.stream.Collectors;
import static com.intellij.openapi.util.Predicates.nonNull;
import static com.intellij.openapi.vcs.VcsNotificationIdsHolder.SHELVE_DELETION_UNDO;
import static com.intellij.openapi.vcs.changes.ui.ChangesGroupingSupport.REPOSITORY_GROUPING;
import static com.intellij.openapi.vcs.changes.ui.ChangesGroupingSupport.REPOSITORY_GROUPING;
import static com.intellij.openapi.vcs.changes.ui.ChangesViewContentManager.*;
import static com.intellij.openapi.vcs.changes.ui.ChangesViewContentManagerKt.subscribeOnVcsToolWindowLayoutChanges;
import static com.intellij.util.FontUtil.spaceAndThinSpace;
@@ -6,7 +6,7 @@ import com.intellij.openapi.components.service
import com.intellij.openapi.diagnostic.logger
import com.intellij.openapi.progress.ProcessCanceledException
import com.intellij.platform.kernel.withKernel
import com.intellij.vcs.impl.shared.rhizome.GroupingItemEntity
import com.intellij.platform.vcs.impl.shared.rhizome.GroupingItemEntity
import fleet.kernel.change
import fleet.kernel.shared
import kotlinx.coroutines.CoroutineScope
@@ -42,7 +42,7 @@ import com.intellij.util.ui.tree.TreeUtil
import com.intellij.vcs.commit.CommitStatusPanel
import com.intellij.vcs.commit.CommitWorkflowListener
import com.intellij.vcs.commit.insertEditedCommitNode
import com.intellij.vcs.impl.shared.changes.PreviewDiffSplitterComponent
import com.intellij.platform.vcs.impl.shared.changes.PreviewDiffSplitterComponent
import com.intellij.vcs.log.runInEdt
import com.intellij.vcs.log.runInEdtAsync
import com.intellij.vcs.ui.ProgressStripe