mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-05 01:50:56 +07:00
update api-dumps
GitOrigin-RevId: 7bd4fd1530673a8bcc29caa814338ee0437f991c
This commit is contained in:
committed by
intellij-monorepo-bot
parent
11f09487f1
commit
144d3d5ca0
@@ -4325,12 +4325,12 @@ a:com.intellij.openapi.vcs.changes.savedPatches.SavedPatchesOperationsGroup
|
||||
com.intellij.openapi.vcs.changes.savedPatches.SavedPatchesProvider
|
||||
- a:buildPatchesTree(com.intellij.openapi.vcs.changes.ui.TreeModelBuilder,Z):V
|
||||
- a:getApplyAction():com.intellij.openapi.actionSystem.AnAction
|
||||
- a:getData(java.lang.String,java.util.stream.Stream):java.lang.Object
|
||||
- a:getDataClass():java.lang.Class
|
||||
- a:getPopAction():com.intellij.openapi.actionSystem.AnAction
|
||||
- a:getTag():com.intellij.openapi.vcs.changes.ui.ChangesBrowserNode$Tag
|
||||
- a:isEmpty():Z
|
||||
- a:subscribeToPatchesListChanges(com.intellij.openapi.Disposable,kotlin.jvm.functions.Function0):V
|
||||
- a:uiDataSnapshot(com.intellij.openapi.actionSystem.DataSink,java.lang.Iterable):V
|
||||
com.intellij.openapi.vcs.changes.savedPatches.SavedPatchesProvider$ChangeObject
|
||||
- com.intellij.openapi.vcs.changes.ui.PresentableChange
|
||||
- asChange():com.intellij.openapi.vcs.changes.Change
|
||||
@@ -4401,12 +4401,12 @@ f:com.intellij.openapi.vcs.changes.savedPatches.ShelfProvider
|
||||
- buildPatchesTree(com.intellij.openapi.vcs.changes.ui.TreeModelBuilder,Z):V
|
||||
- dispose():V
|
||||
- getApplyAction():com.intellij.openapi.actionSystem.AnAction
|
||||
- getData(java.lang.String,java.util.stream.Stream):java.lang.Object
|
||||
- getDataClass():java.lang.Class
|
||||
- getPopAction():com.intellij.openapi.actionSystem.AnAction
|
||||
- getTag():com.intellij.openapi.vcs.changes.ui.ChangesBrowserNode$Tag
|
||||
- isEmpty():Z
|
||||
- subscribeToPatchesListChanges(com.intellij.openapi.Disposable,kotlin.jvm.functions.Function0):V
|
||||
- uiDataSnapshot(com.intellij.openapi.actionSystem.DataSink,java.lang.Iterable):V
|
||||
f:com.intellij.openapi.vcs.changes.savedPatches.ShelfProvider$ShelfObject
|
||||
- com.intellij.openapi.vcs.changes.savedPatches.SavedPatchesProvider$PatchObject
|
||||
- <init>(com.intellij.openapi.vcs.changes.savedPatches.ShelfProvider,com.intellij.openapi.vcs.changes.shelf.ShelvedChangeList):V
|
||||
|
||||
@@ -3,14 +3,17 @@ package com.intellij.openapi.vcs.changes.savedPatches
|
||||
|
||||
import com.intellij.openapi.Disposable
|
||||
import com.intellij.openapi.actionSystem.AnAction
|
||||
import com.intellij.openapi.actionSystem.DataSink
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.vcs.FilePath
|
||||
import com.intellij.openapi.vcs.changes.Change
|
||||
import com.intellij.openapi.vcs.changes.ui.*
|
||||
import com.intellij.openapi.vcs.changes.ui.ChangeDiffRequestChain
|
||||
import com.intellij.openapi.vcs.changes.ui.ChangesBrowserNode.Tag
|
||||
import com.intellij.openapi.vcs.changes.ui.ChangesTree
|
||||
import com.intellij.openapi.vcs.changes.ui.PresentableChange
|
||||
import com.intellij.openapi.vcs.changes.ui.TreeModelBuilder
|
||||
import org.jetbrains.annotations.Nls
|
||||
import java.util.concurrent.CompletableFuture
|
||||
import java.util.stream.Stream
|
||||
import javax.swing.JComponent
|
||||
|
||||
interface SavedPatchesProvider<S> {
|
||||
@@ -23,7 +26,8 @@ interface SavedPatchesProvider<S> {
|
||||
fun subscribeToPatchesListChanges(disposable: Disposable, listener: () -> Unit)
|
||||
fun isEmpty(): Boolean
|
||||
fun buildPatchesTree(modelBuilder: TreeModelBuilder, showRootNode: Boolean)
|
||||
fun getData(dataId: String, selectedObjects: Stream<PatchObject<*>>): Any?
|
||||
|
||||
fun uiDataSnapshot(sink: DataSink, selectedObjects: Iterable<PatchObject<*>>)
|
||||
|
||||
interface PatchObject<S> {
|
||||
val data: S
|
||||
|
||||
@@ -1,10 +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.openapi.vcs.changes.savedPatches
|
||||
|
||||
import com.intellij.ide.impl.DataValidators
|
||||
import com.intellij.ide.util.treeView.TreeState
|
||||
import com.intellij.openapi.Disposable
|
||||
import com.intellij.openapi.actionSystem.DataProvider
|
||||
import com.intellij.openapi.actionSystem.DataSink
|
||||
import com.intellij.openapi.actionSystem.DataSnapshotProvider
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.util.ClearableLazyValue
|
||||
import com.intellij.openapi.util.Disposer
|
||||
@@ -23,7 +24,6 @@ import com.intellij.util.ui.tree.TreeUtil
|
||||
import org.jetbrains.annotations.Nls
|
||||
import java.awt.BorderLayout
|
||||
import java.awt.Component
|
||||
import java.util.stream.Stream
|
||||
import javax.swing.JComponent
|
||||
import javax.swing.JTree
|
||||
import javax.swing.tree.DefaultTreeModel
|
||||
@@ -67,17 +67,17 @@ class SavedPatchesTree(project: Project,
|
||||
if (visibleProvidersList.isNotEmpty()) {
|
||||
val selectedObjects = selectedPatchObjects()
|
||||
visibleProvidersList.forEach { provider ->
|
||||
DataSink.uiDataSnapshot(sink, DataProvider { dataId ->
|
||||
provider.getData(dataId, selectedObjects)
|
||||
DataSink.uiDataSnapshot(sink, object : DataSnapshotProvider, DataValidators.SourceWrapper {
|
||||
override fun dataSnapshot(sink: DataSink) = provider.uiDataSnapshot(sink, selectedObjects)
|
||||
override fun unwrapSource(): Any = provider
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
internal fun selectedPatchObjects(): Stream<SavedPatchesProvider.PatchObject<*>> {
|
||||
internal fun selectedPatchObjects(): Iterable<SavedPatchesProvider.PatchObject<*>> {
|
||||
return VcsTreeModelData.selected(this)
|
||||
.iterateUserObjects(SavedPatchesProvider.PatchObject::class.java)
|
||||
.toStream()
|
||||
}
|
||||
|
||||
override fun getToggleClickCount(): Int = 2
|
||||
|
||||
@@ -11,7 +11,6 @@ import com.intellij.openapi.vcs.changes.EditorTabDiffPreviewManager
|
||||
import com.intellij.ui.*
|
||||
import com.intellij.util.EditSourceOnDoubleClickHandler
|
||||
import com.intellij.util.Processor
|
||||
import com.intellij.util.containers.orNull
|
||||
import com.intellij.util.ui.JBUI
|
||||
import com.intellij.util.ui.ProportionKey
|
||||
import com.intellij.util.ui.TwoKeySplitter
|
||||
@@ -180,7 +179,7 @@ open class SavedPatchesUi(project: Project,
|
||||
return null
|
||||
}
|
||||
|
||||
private fun selectedPatchObjectOrNull() = patchesTree.selectedPatchObjects().findAny().orNull()
|
||||
private fun selectedPatchObjectOrNull() = patchesTree.selectedPatchObjects().firstOrNull()
|
||||
|
||||
private fun selectedProvider(): SavedPatchesProvider<*> {
|
||||
val selectedPatch = selectedPatchObjectOrNull() ?: return providers.first()
|
||||
|
||||
@@ -4,6 +4,7 @@ package com.intellij.openapi.vcs.changes.savedPatches
|
||||
import com.intellij.openapi.Disposable
|
||||
import com.intellij.openapi.actionSystem.ActionManager
|
||||
import com.intellij.openapi.actionSystem.AnAction
|
||||
import com.intellij.openapi.actionSystem.DataSink
|
||||
import com.intellij.openapi.application.ApplicationManager
|
||||
import com.intellij.openapi.progress.ProgressManager
|
||||
import com.intellij.openapi.progress.util.BackgroundTaskUtil
|
||||
@@ -18,11 +19,10 @@ import com.intellij.openapi.vcs.changes.ui.ChangesBrowserNodeRenderer
|
||||
import com.intellij.openapi.vcs.changes.ui.TreeModelBuilder
|
||||
import com.intellij.ui.SimpleTextAttributes
|
||||
import com.intellij.util.concurrency.AppExecutorUtil
|
||||
import com.intellij.util.containers.JBIterable
|
||||
import com.intellij.util.text.DateFormatUtil
|
||||
import one.util.streamex.StreamEx
|
||||
import java.util.concurrent.CompletableFuture
|
||||
import java.util.concurrent.TimeUnit
|
||||
import java.util.stream.Stream
|
||||
|
||||
class ShelfProvider(private val project: Project, parent: Disposable) : SavedPatchesProvider<ShelvedChangeList>, Disposable {
|
||||
private val executor = AppExecutorUtil.createBoundedApplicationPoolExecutor("Shelved Changes Loader", 1)
|
||||
@@ -75,7 +75,8 @@ class ShelfProvider(private val project: Project, parent: Disposable) : SavedPat
|
||||
val shelvesList = mainLists().sortedByDescending { it.date }
|
||||
val shelvesRoot = if (showRootNode) SavedPatchesTree.TagWithCounterChangesBrowserNode(tag).also {
|
||||
modelBuilder.insertSubtreeRoot(it)
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
modelBuilder.myRoot
|
||||
}
|
||||
|
||||
@@ -96,23 +97,22 @@ class ShelfProvider(private val project: Project, parent: Disposable) : SavedPat
|
||||
}
|
||||
}
|
||||
|
||||
override fun getData(dataId: String, selectedObjects: Stream<SavedPatchesProvider.PatchObject<*>>): Any? {
|
||||
if (ShelvedChangesViewManager.SHELVED_CHANGELIST_KEY.`is`(dataId)) {
|
||||
return filterLists(selectedObjects) { l -> !l.isRecycled && !l.isDeleted }
|
||||
}
|
||||
else if (ShelvedChangesViewManager.SHELVED_RECYCLED_CHANGELIST_KEY.`is`(dataId)) {
|
||||
return filterLists(selectedObjects) { l -> l.isRecycled && !l.isDeleted }
|
||||
}
|
||||
else if (ShelvedChangesViewManager.SHELVED_DELETED_CHANGELIST_KEY.`is`(dataId)) {
|
||||
return filterLists(selectedObjects) { l -> l.isDeleted }
|
||||
}
|
||||
return null
|
||||
override fun uiDataSnapshot(sink: DataSink, selectedObjects: Iterable<SavedPatchesProvider.PatchObject<*>>) {
|
||||
sink[ShelvedChangesViewManager.SHELVED_CHANGELIST_KEY] =
|
||||
filterLists(selectedObjects) { l -> !l.isRecycled && !l.isDeleted }
|
||||
sink[ShelvedChangesViewManager.SHELVED_RECYCLED_CHANGELIST_KEY] =
|
||||
filterLists(selectedObjects) { l -> l.isRecycled && !l.isDeleted }
|
||||
sink[ShelvedChangesViewManager.SHELVED_DELETED_CHANGELIST_KEY] =
|
||||
filterLists(selectedObjects) { l -> l.isDeleted }
|
||||
}
|
||||
|
||||
private fun filterLists(selectedObjects: Stream<SavedPatchesProvider.PatchObject<*>>,
|
||||
private fun filterLists(selectedObjects: Iterable<SavedPatchesProvider.PatchObject<*>>,
|
||||
predicate: (ShelvedChangeList) -> Boolean): List<ShelvedChangeList> {
|
||||
return StreamEx.of(selectedObjects.map(SavedPatchesProvider.PatchObject<*>::data)).filterIsInstance(dataClass)
|
||||
.filter(predicate).toList()
|
||||
return JBIterable.from(selectedObjects)
|
||||
.map(SavedPatchesProvider.PatchObject<*>::data)
|
||||
.filter(dataClass)
|
||||
.filter(predicate)
|
||||
.toList()
|
||||
}
|
||||
|
||||
override fun dispose() {
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.intellij.dvcs.ui.RepositoryChangesBrowserNode
|
||||
import com.intellij.openapi.Disposable
|
||||
import com.intellij.openapi.actionSystem.ActionManager
|
||||
import com.intellij.openapi.actionSystem.AnAction
|
||||
import com.intellij.openapi.actionSystem.DataSink
|
||||
import com.intellij.openapi.components.service
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.util.ClearableLazyValue
|
||||
@@ -26,6 +27,7 @@ import com.intellij.openapi.vcs.changes.ui.VcsTreeModelData.allUnder
|
||||
import com.intellij.openapi.vfs.VirtualFile
|
||||
import com.intellij.ui.SimpleTextAttributes
|
||||
import com.intellij.util.FontUtil
|
||||
import com.intellij.util.containers.JBIterable
|
||||
import com.intellij.util.text.DateFormatUtil
|
||||
import com.intellij.vcs.log.Hash
|
||||
import com.intellij.vcs.log.ui.render.LabelIconCache
|
||||
@@ -39,12 +41,10 @@ import git4idea.stash.isNotEmpty
|
||||
import git4idea.ui.StashInfo
|
||||
import git4idea.ui.StashInfo.Companion.branchName
|
||||
import git4idea.ui.StashInfo.Companion.subject
|
||||
import one.util.streamex.StreamEx
|
||||
import org.jetbrains.annotations.Nls
|
||||
import org.jetbrains.annotations.PropertyKey
|
||||
import java.util.concurrent.CancellationException
|
||||
import java.util.concurrent.CompletableFuture
|
||||
import java.util.stream.Stream
|
||||
import javax.swing.JComponent
|
||||
|
||||
class GitStashProvider(val project: Project, parent: Disposable) : SavedPatchesProvider<StashInfo>, Disposable {
|
||||
@@ -82,7 +82,8 @@ class GitStashProvider(val project: Project, parent: Disposable) : SavedPatchesP
|
||||
val stashesMap = stashTracker.stashes
|
||||
val stashesRoot = if (showRootNode) {
|
||||
SavedPatchesTree.TagWithCounterChangesBrowserNode(tag).also { modelBuilder.insertSubtreeRoot(it) }
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
modelBuilder.myRoot
|
||||
}
|
||||
for ((root, stashesList) in stashesMap) {
|
||||
@@ -117,11 +118,11 @@ class GitStashProvider(val project: Project, parent: Disposable) : SavedPatchesP
|
||||
insertSubtreeRoot(errorNode, parent)
|
||||
}
|
||||
|
||||
override fun getData(dataId: String, selectedObjects: Stream<SavedPatchesProvider.PatchObject<*>>): Any? {
|
||||
if (STASH_INFO.`is`(dataId)) {
|
||||
return StreamEx.of(selectedObjects.map(SavedPatchesProvider.PatchObject<*>::data)).filterIsInstance(dataClass).toList()
|
||||
}
|
||||
return null
|
||||
override fun uiDataSnapshot(sink: DataSink, selectedObjects: Iterable<SavedPatchesProvider.PatchObject<*>>) {
|
||||
sink[STASH_INFO] = JBIterable.from(selectedObjects)
|
||||
.map(SavedPatchesProvider.PatchObject<*>::data)
|
||||
.filter(dataClass)
|
||||
.toList()
|
||||
}
|
||||
|
||||
override fun dispose() {
|
||||
|
||||
Reference in New Issue
Block a user