Files
Sergei Tachenov 41677ecfc8 IJPL-166086 Implement PhysicalAndLogicalStructureViewBuilder.createStructureViewSuspend
To avoid executing slow ops in getLogicalStructureBuilder()
on the EDT, split the implementation into the BGT and EDT parts.
The old function remains the same, but the new suspend
one executes the slow part in a regular readAction,
and the UI part on the EDT under the WIL.


(cherry picked from commit f772898db79b87079d03ee404ea8152359ec79e9)

IJ-CR-149552

GitOrigin-RevId: ef76166383c63919ffab3d7b14e30b8a5ee61a0d
2024-11-19 12:48:35 +00:00

177 lines
10 KiB
Plaintext

f:com.intellij.ide.structureView.StructureViewBundle
- s:message(java.lang.String,java.lang.Object[]):java.lang.String
- s:messagePointer(java.lang.String,java.lang.Object[]):java.util.function.Supplier
com.intellij.ide.structureView.StructureViewExtension
- filterChildren(java.util.Collection,java.util.List):V
- a:getChildren(com.intellij.psi.PsiElement):com.intellij.ide.structureView.StructureViewTreeElement[]
- a:getCurrentEditorElement(com.intellij.openapi.editor.Editor,com.intellij.psi.PsiElement):java.lang.Object
- a:getType():java.lang.Class
a:com.intellij.ide.structureView.StructureViewFactoryEx
- com.intellij.ide.structureView.StructureViewFactory
- <init>():V
- a:getAllExtensions(java.lang.Class):java.util.Collection
- s:getInstanceEx(com.intellij.openapi.project.Project):com.intellij.ide.structureView.StructureViewFactoryEx
- a:getStructureViewWrapper():com.intellij.ide.structureView.StructureViewWrapper
- a:isActionActive(java.lang.String):Z
- a:runWhenInitialized(java.lang.Runnable):V
- a:setActiveAction(java.lang.String,Z):V
com.intellij.ide.structureView.StructureViewWrapper
- a:selectCurrentElement(com.intellij.openapi.fileEditor.FileEditor,com.intellij.openapi.vfs.VirtualFile,Z):Z
c:com.intellij.ide.structureView.customRegions.CustomRegionTreeElement
- com.intellij.ide.structureView.StructureViewTreeElement
- canNavigate():Z
- canNavigateToSource():Z
- getChildren():com.intellij.ide.util.treeView.smartTree.TreeElement[]
- getPresentation():com.intellij.navigation.ItemPresentation
- getValue():java.lang.Object
- navigate(Z):V
a:com.intellij.ide.structureView.impl.common.PsiTreeElementBase
- com.intellij.ide.structureView.StructureViewTreeElement
- com.intellij.ide.util.treeView.NodeDescriptorProvidingKey
- com.intellij.navigation.ItemPresentation
- p:<init>(com.intellij.psi.PsiElement):V
- canNavigate():Z
- canNavigateToSource():Z
- equals(java.lang.Object):Z
- f:getChildren():com.intellij.ide.structureView.StructureViewTreeElement[]
- a:getChildrenBase():java.util.Collection
- f:getChildrenWithoutCustomRegions():java.util.List
- f:getElement():com.intellij.psi.PsiElement
- getIcon(Z):javax.swing.Icon
- getKey():java.lang.Object
- getPresentation():com.intellij.navigation.ItemPresentation
- getValue():com.intellij.psi.PsiElement
- hashCode():I
- isSearchInLocationString():Z
- isValid():Z
- navigate(Z):V
com.intellij.ide.structureView.logical.ContainerElementsProvider
- com.intellij.ide.structureView.logical.LogicalStructureElementsProvider
- a:getContainerName():java.lang.String
a:com.intellij.ide.structureView.logical.ConvertElementsProvider
- com.intellij.ide.structureView.logical.LogicalStructureElementsProvider
- sf:Companion:com.intellij.ide.structureView.logical.ConvertElementsProvider$Companion
- <init>():V
- a:convert(java.lang.Object):java.lang.Object
- getElements(java.lang.Object):java.util.List
f:com.intellij.ide.structureView.logical.ConvertElementsProvider$Companion
- f:convert(java.lang.Object):kotlin.sequences.Sequence
com.intellij.ide.structureView.logical.ExternalElementsProvider
- com.intellij.ide.structureView.logical.ContainerElementsProvider
c:com.intellij.ide.structureView.logical.LogicalStructureDataKeys
- sf:STRUCTURE_TREE_ELEMENT:com.intellij.openapi.actionSystem.DataKey
- <init>():V
com.intellij.ide.structureView.logical.LogicalStructureTreeElementProvider
- sf:Companion:com.intellij.ide.structureView.logical.LogicalStructureTreeElementProvider$Companion
- a:getModelClass():java.lang.Class
- a:getTreeElement(java.lang.Object):com.intellij.ide.structureView.StructureViewTreeElement
f:com.intellij.ide.structureView.logical.LogicalStructureTreeElementProvider$Companion
- f:getTreeElement(java.lang.Object):com.intellij.ide.structureView.StructureViewTreeElement
f:com.intellij.ide.structureView.logical.PhysicalAndLogicalStructureViewBuilder
- com.intellij.ide.structureView.TreeBasedStructureViewBuilder
- <init>(com.intellij.ide.structureView.TreeBasedStructureViewBuilder,com.intellij.psi.PsiFile):V
- f:createPhysicalStructureView(com.intellij.openapi.fileEditor.FileEditor,com.intellij.openapi.project.Project):com.intellij.ide.structureView.StructureView
- createStructureView(com.intellij.openapi.fileEditor.FileEditor,com.intellij.openapi.project.Project):com.intellij.ide.structureView.StructureView
- createStructureViewModel(com.intellij.openapi.editor.Editor):com.intellij.ide.structureView.StructureViewModel
- createStructureViewSuspend(com.intellij.openapi.fileEditor.FileEditor,com.intellij.openapi.project.Project,kotlin.coroutines.Continuation):java.lang.Object
com.intellij.ide.structureView.logical.PropertyElementProvider
- com.intellij.ide.structureView.logical.LogicalStructureElementsProvider
- a:getPropertyName():java.lang.String
f:com.intellij.ide.structureView.logical.impl.LogicalStructureViewService
- sf:Companion:com.intellij.ide.structureView.logical.impl.LogicalStructureViewService$Companion
- <init>(com.intellij.openapi.project.Project):V
- f:getLogicalStructureBuilder(com.intellij.psi.PsiFile):com.intellij.ide.structureView.StructureViewBuilder
f:com.intellij.ide.structureView.logical.impl.LogicalStructureViewService$Companion
- f:getInstance(com.intellij.openapi.project.Project):com.intellij.ide.structureView.logical.impl.LogicalStructureViewService
com.intellij.ide.structureView.logical.impl.LogicalStructureViewTreeElement
- com.intellij.ide.structureView.StructureViewTreeElement
- a:getLogicalAssembledModel():com.intellij.ide.structureView.logical.model.LogicalStructureAssembledModel
a:com.intellij.ide.structureView.logical.model.LogicalModelPresentationProvider
- com.intellij.ide.presentation.PresentationProvider
- sf:Companion:com.intellij.ide.structureView.logical.model.LogicalModelPresentationProvider$Companion
- <init>():V
- getColoredText(java.lang.Object):java.util.List
- handleClick(java.lang.Object,I):Z
- isAutoExpand(java.lang.Object):Z
f:com.intellij.ide.structureView.logical.model.LogicalModelPresentationProvider$Companion
- f:getForObject(java.lang.Object):com.intellij.ide.structureView.logical.model.LogicalModelPresentationProvider
f:com.intellij.ide.structureView.logical.model.LogicalStructureAssembledModel
- sf:Companion:com.intellij.ide.structureView.logical.model.LogicalStructureAssembledModel$Companion
- equals(java.lang.Object):Z
- f:getChildren():java.util.List
- f:getChildrenGrouped():java.util.List
- f:getModel():java.lang.Object
- f:getParent():com.intellij.ide.structureView.logical.model.LogicalStructureAssembledModel
- f:getProject():com.intellij.openapi.project.Project
- hashCode():I
f:com.intellij.ide.structureView.logical.model.LogicalStructureAssembledModel$Companion
- f:getInstance(com.intellij.openapi.project.Project,java.lang.Object):com.intellij.ide.structureView.logical.model.LogicalStructureAssembledModel
a:com.intellij.ide.util.InheritedMembersNodeProvider
- com.intellij.ide.util.ActionShortcutProvider
- com.intellij.ide.util.FileStructureNodeProvider
- <init>():V
- getActionIdForShortcut():java.lang.String
- getCheckBoxText():java.lang.String
- getName():java.lang.String
- getPresentation():com.intellij.ide.util.treeView.smartTree.ActionPresentation
- getShortcut():com.intellij.openapi.actionSystem.Shortcut[]
a:com.intellij.ide.util.treeView.AbstractTreeStructureBase
- com.intellij.ide.util.treeView.AbstractTreeStructure
- pf:myProject:com.intellij.openapi.project.Project
- p:<init>(com.intellij.openapi.project.Project):V
- createDescriptor(java.lang.Object,com.intellij.ide.util.treeView.NodeDescriptor):com.intellij.ide.util.treeView.NodeDescriptor
- getChildElements(java.lang.Object):java.lang.Object[]
- getParentElement(java.lang.Object):java.lang.Object
- a:getProviders():java.util.List
- isValid(java.lang.Object):Z
a:com.intellij.ide.util.treeView.smartTree.CachingChildrenTreeNode
- com.intellij.ide.util.treeView.AbstractTreeNode
- pf:myTreeModel:com.intellij.ide.util.treeView.smartTree.TreeModel
- canNavigate():Z
- canNavigateToSource():Z
- p:clearChildren():V
- pa:copyFromNewInstance(com.intellij.ide.util.treeView.smartTree.CachingChildrenTreeNode):V
- p:createChildNode(com.intellij.ide.util.treeView.smartTree.TreeElement):com.intellij.ide.util.treeView.smartTree.TreeElementWrapper
- p:createGroupWrapper(com.intellij.openapi.project.Project,com.intellij.ide.util.treeView.smartTree.Group,com.intellij.ide.util.treeView.smartTree.TreeModel):com.intellij.ide.util.treeView.smartTree.GroupWrapper
- p:filterChildren(com.intellij.ide.util.treeView.smartTree.Filter[]):V
- getChildren():java.util.Collection
- pa:initChildren():V
- isAutoExpandAllowed():Z
- navigate(Z):V
- pa:performTreeActions():V
- p:resetChildren():V
- p:setChildren(java.util.Collection):V
- p:sortChildren(com.intellij.ide.util.treeView.smartTree.Sorter[]):V
c:com.intellij.ide.util.treeView.smartTree.GroupWrapper
- com.intellij.ide.util.treeView.smartTree.CachingChildrenTreeNode
- <init>(com.intellij.openapi.project.Project,com.intellij.ide.util.treeView.smartTree.Group,com.intellij.ide.util.treeView.smartTree.TreeModel):V
- copyFromNewInstance(com.intellij.ide.util.treeView.smartTree.CachingChildrenTreeNode):V
- initChildren():V
- p:performTreeActions():V
- update(com.intellij.ide.projectView.PresentationData):V
c:com.intellij.ide.util.treeView.smartTree.SmartTreeStructure
- com.intellij.ide.util.treeView.AbstractTreeStructure
- pf:myModel:com.intellij.ide.util.treeView.smartTree.TreeModel
- pf:myProject:com.intellij.openapi.project.Project
- <init>(com.intellij.openapi.project.Project,com.intellij.ide.util.treeView.smartTree.TreeModel):V
- asyncCommit():com.intellij.openapi.util.ActionCallback
- commit():V
- createDescriptor(java.lang.Object,com.intellij.ide.util.treeView.NodeDescriptor):com.intellij.ide.util.treeView.NodeDescriptor
- p:createTree():com.intellij.ide.util.treeView.smartTree.TreeElementWrapper
- getChildElements(java.lang.Object):java.lang.Object[]
- getParentElement(java.lang.Object):java.lang.Object
- getRootElement():java.lang.Object
- hasSomethingToCommit():Z
- isAlwaysLeaf(java.lang.Object):Z
- rebuildTree():V
c:com.intellij.ide.util.treeView.smartTree.TreeElementWrapper
- com.intellij.ide.util.treeView.smartTree.CachingChildrenTreeNode
- <init>(com.intellij.openapi.project.Project,com.intellij.ide.util.treeView.smartTree.TreeElement,com.intellij.ide.util.treeView.smartTree.TreeModel):V
- copyFromNewInstance(com.intellij.ide.util.treeView.smartTree.CachingChildrenTreeNode):V
- initChildren():V
- p:performTreeActions():V
- update(com.intellij.ide.projectView.PresentationData):V
f:com.intellij.ide.util.treeView.smartTree.TreeStructureUtil
- s:getPropertyName(java.lang.String):java.lang.String
- s:isInStructureViewPopup(com.intellij.ui.PlaceHolder):Z