mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-03-22 15:10:43 +07:00
IDEA-304699 pass data contexts explicitly
GitOrigin-RevId: 99536bfde6300ab04c18c37e9f7f28602c45cedb
This commit is contained in:
committed by
intellij-monorepo-bot
parent
37e834f9b1
commit
70244a28f8
@@ -2,7 +2,6 @@
|
||||
|
||||
package com.intellij.ide.util.scopeChooser;
|
||||
|
||||
import com.intellij.ide.DataManager;
|
||||
import com.intellij.ide.IdeBundle;
|
||||
import com.intellij.ide.util.TreeClassChooser;
|
||||
import com.intellij.ide.util.TreeClassChooserFactory;
|
||||
@@ -34,10 +33,9 @@ final class ClassHierarchyScopeDescriptor extends ScopeDescriptor {
|
||||
private final @NotNull Project myProject;
|
||||
private final @Nullable PsiClass myRootClass;
|
||||
|
||||
ClassHierarchyScopeDescriptor(@NotNull Project project) {
|
||||
ClassHierarchyScopeDescriptor(@NotNull Project project, @NotNull DataContext dataContext) {
|
||||
super(null);
|
||||
myProject = project;
|
||||
DataContext dataContext = DataManager.getInstance().getDataContext();
|
||||
PsiElement element;
|
||||
Editor editor = CommonDataKeys.EDITOR.getData(dataContext);
|
||||
if (editor != null) {
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
// Copyright 2000-2018 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.ide.util.scopeChooser
|
||||
|
||||
import com.intellij.openapi.actionSystem.DataContext
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.util.Comparing
|
||||
import com.intellij.openapi.wm.ToolWindowId
|
||||
import com.intellij.openapi.wm.ToolWindowManager.Companion.getInstance
|
||||
|
||||
class HierarchyScopeDescriptorProvider : ScopeDescriptorProvider {
|
||||
override fun getScopeDescriptors(project: Project): Array<ScopeDescriptor> =
|
||||
override fun getScopeDescriptors(project: Project, dataContext: DataContext): Array<ScopeDescriptor> =
|
||||
if (Comparing.strEqual(getInstance(project).activeToolWindowId, ToolWindowId.TODO_VIEW)) {
|
||||
ScopeDescriptorProvider.EMPTY
|
||||
}
|
||||
else arrayOf(ClassHierarchyScopeDescriptor(project))
|
||||
else arrayOf(ClassHierarchyScopeDescriptor(project, dataContext))
|
||||
}
|
||||
@@ -15,12 +15,13 @@
|
||||
*/
|
||||
package com.intellij.ide.util.scopeChooser
|
||||
|
||||
import com.intellij.openapi.actionSystem.DataContext
|
||||
import com.intellij.openapi.extensions.ExtensionPointName
|
||||
import com.intellij.openapi.extensions.ExtensionPointName.Companion.create
|
||||
import com.intellij.openapi.project.Project
|
||||
|
||||
interface ScopeDescriptorProvider {
|
||||
fun getScopeDescriptors(project: Project): Array<ScopeDescriptor>
|
||||
fun getScopeDescriptors(project: Project, dataContext: DataContext): Array<ScopeDescriptor>
|
||||
|
||||
companion object {
|
||||
@JvmField
|
||||
|
||||
@@ -103,7 +103,7 @@ class ScopeModel(options: Set<Option>) {
|
||||
}
|
||||
|
||||
for (provider in ScopeDescriptorProvider.EP_NAME.extensionList) {
|
||||
for (descriptor in provider.getScopeDescriptors(project)) {
|
||||
for (descriptor in provider.getScopeDescriptors(project, dataContext)) {
|
||||
if (filter.test(descriptor)) {
|
||||
result.add(descriptor)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user