extract intellij.platform.execution.dashboard

GitOrigin-RevId: 5d941bcb68bc17f355aa1421ec4035b13994358c
This commit is contained in:
Daniil Ovchinnikov
2024-05-13 19:08:29 +02:00
committed by intellij-monorepo-bot
parent c01f926834
commit 83936c49e1
53 changed files with 287 additions and 296 deletions

1
.idea/modules.xml generated
View File

@@ -660,6 +660,7 @@
<module fileurl="file://$PROJECT_DIR$/platform/editor-ui-api/intellij.platform.editor.iml" filepath="$PROJECT_DIR$/platform/editor-ui-api/intellij.platform.editor.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/editor-ui-ex/intellij.platform.editor.ex.iml" filepath="$PROJECT_DIR$/platform/editor-ui-ex/intellij.platform.editor.ex.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/execution/intellij.platform.execution.iml" filepath="$PROJECT_DIR$/platform/execution/intellij.platform.execution.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/execution.dashboard/intellij.platform.execution.dashboard.iml" filepath="$PROJECT_DIR$/platform/execution.dashboard/intellij.platform.execution.dashboard.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/execution-impl/intellij.platform.execution.impl.iml" filepath="$PROJECT_DIR$/platform/execution-impl/intellij.platform.execution.impl.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/execution-impl/intellij.platform.execution.tests.iml" filepath="$PROJECT_DIR$/platform/execution-impl/intellij.platform.execution.tests.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/experiment/intellij.platform.experiment.iml" filepath="$PROJECT_DIR$/platform/experiment/intellij.platform.experiment.iml" />

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" packagePrefix="com.intellij.platform.execution.dashboard" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="intellij.platform.core.ui" />
<orderEntry type="module" module-name="intellij.platform.lang.impl" />
<orderEntry type="module" module-name="intellij.platform.execution.impl" />
<orderEntry type="module" module-name="intellij.platform.statistics" />
<orderEntry type="library" name="fastutil-min" level="project" />
<orderEntry type="library" name="Guava" level="project" />
</component>
</module>

View File

@@ -0,0 +1,87 @@
<idea-plugin package="com.intellij.platform.execution.dashboard">
<extensions defaultExtensionNs="com.intellij">
<projectService serviceInterface="com.intellij.execution.dashboard.RunDashboardManager"
serviceImplementation="com.intellij.platform.execution.dashboard.RunDashboardManagerImpl"/>
<backgroundPostStartupActivity implementation="com.intellij.platform.execution.dashboard.RunDashboardCheckerActivity"/>
<notificationGroup id="Services Tool Window" displayType="BALLOON" isLogByDefault="true" bundle="messages.ExecutionBundle"
key="notification.group.services"
notificationIds="run.dashboard.multiple.run.configurations"/>
<runDashboardGroupingRule id="type" order="first"
implementation="com.intellij.platform.execution.dashboard.tree.ConfigurationTypeDashboardGroupingRule"/>
<runDashboardGroupingRule id="status" order="after type"
implementation="com.intellij.platform.execution.dashboard.tree.StatusDashboardGroupingRule"/>
<runDashboardGroupingRule id="folder" order="after status"
implementation="com.intellij.platform.execution.dashboard.tree.FolderDashboardGroupingRule"/>
<actionPromoter implementation="com.intellij.platform.execution.dashboard.actions.RunDashboardActionPromoter"/>
<serviceViewContributor implementation="com.intellij.platform.execution.dashboard.RunDashboardServiceViewContributor"/>
</extensions>
<extensions defaultExtensionNs="com.intellij.statistics">
<projectUsagesCollector implementation="com.intellij.platform.execution.dashboard.RunDashboardUsagesCollector"/>
<validation.customValidationRule
implementation="com.intellij.platform.execution.dashboard.RunDashboardUsagesCollector$RunConfigurationTypeValidator"/>
</extensions>
<extensionPoints>
<extensionPoint name="runDashboardChecker" interface="com.intellij.execution.dashboard.RunDashboardChecker" dynamic="true"/>
</extensionPoints>
<actions>
<group id="RunDashboardContentToolbar">
<action id="RunDashboard.Run" icon="AllIcons.Actions.Execute" use-shortcut-of="RunClass"
class="com.intellij.platform.execution.dashboard.actions.RunAction">
<add-to-group anchor="first" group-id="RunTab.TopToolbar"/>
<add-to-group anchor="first" group-id="RunTab.TopToolbar.Old"/>
<add-to-group anchor="first" group-id="XDebugger.ToolWindow.TopToolbar3"/>
</action>
<action id="RunDashboard.Debug" icon="AllIcons.Actions.StartDebugger" use-shortcut-of="DebugClass"
class="com.intellij.platform.execution.dashboard.actions.DebugAction">
<add-to-group anchor="after" relative-to-action="RunDashboard.Run" group-id="RunTab.TopToolbar"/>
<add-to-group anchor="after" relative-to-action="RunDashboard.Run" group-id="RunTab.TopToolbar.Old"/>
<add-to-group anchor="after" relative-to-action="RunDashboard.Run" group-id="XDebugger.ToolWindow.TopToolbar3"/>
</action>
<action id="RunDashboard.Stop" icon="AllIcons.Actions.Suspend" use-shortcut-of="Stop"
class="com.intellij.platform.execution.dashboard.actions.StopAction"/>
</group>
<group id="RunDashboardPopup">
<action id="RunDashboard.EditConfiguration" icon="AllIcons.Actions.EditSource" use-shortcut-of="EditSourceInNewWindow"
class="com.intellij.platform.execution.dashboard.actions.EditConfigurationAction"/>
<action id="RunDashboard.CopyConfiguration" icon="AllIcons.Actions.Copy" use-shortcut-of="EditorDuplicate"
class="com.intellij.platform.execution.dashboard.actions.CopyConfigurationAction"/>
<separator/>
<action id="RunDashboard.HideConfiguration"
class="com.intellij.platform.execution.dashboard.actions.HideConfigurationAction"/>
<action id="RunDashboard.RestoreHiddenConfigurations"
class="com.intellij.platform.execution.dashboard.actions.RestoreHiddenConfigurationsAction"/>
<action id="RunDashboard.RemoveType"
class="com.intellij.platform.execution.dashboard.actions.RemoveRunConfigurationTypeAction"/>
<action id="RunDashboard.OpenRunningConfigInNewTab"
class="com.intellij.platform.execution.dashboard.actions.OpenRunningConfigInNewTabAction"/>
<separator/>
<action id="RunDashboard.ClearContent" icon="AllIcons.Actions.Cancel"
class="com.intellij.platform.execution.dashboard.actions.ClearContentAction"/>
<action id="RunDashboard.RestoreConfiguration" icon="AllIcons.Actions.Rollback"
class="com.intellij.platform.execution.dashboard.actions.RestoreConfigurationAction"/>
<separator/>
<action id="RunDashboard.GroupConfigurations" icon="AllIcons.Actions.GroupByPackage"
class="com.intellij.platform.execution.dashboard.actions.GroupConfigurationsAction"/>
<action id="RunDashboard.UngroupConfigurations" icon="AllIcons.General.Remove" use-shortcut-of="$Delete"
class="com.intellij.platform.execution.dashboard.actions.UngroupConfigurationsActions"/>
<separator/>
</group>
<group id="RunDashboard.ViewOptions" popup="true" class="com.intellij.ide.actions.NonEmptyActionGroup">
<separator key="separator.RunDashboard.GroupBy"/>
<action id="RunDashboard.GroupByType"
class="com.intellij.platform.execution.dashboard.actions.GroupByConfigurationTypeAction"/>
<action id="RunDashboard.GroupByStatus"
class="com.intellij.platform.execution.dashboard.actions.GroupByConfigurationStatusAction"/>
<separator/>
<separator key="separator.RunDashboard.Filter"/>
<group id="RunDashboard.Filter" class="com.intellij.platform.execution.dashboard.actions.RunDashboardFilterActionGroup"/>
<add-to-group group-id="ServiceView.ViewOptions"/>
</group>
<action id="RunDashboard.AddType" class="com.intellij.platform.execution.dashboard.actions.AddRunConfigurationTypeAction">
<add-to-group group-id="ServiceView.AddService"/>
</action>
<reference id="RunDashboard.RestoreHiddenConfigurations">
<add-to-group group-id="ServiceView.AddService" anchor="after" relative-to-action="RunDashboard.AddType"/>
</reference>
</actions>
</idea-plugin>

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard;
// 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.platform.execution.dashboard;
import com.intellij.openapi.util.Conditions;
import com.intellij.ui.ComponentUtil;

View File

@@ -1,10 +1,12 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard
// 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.platform.execution.dashboard
import com.intellij.execution.ExecutionBundle
import com.intellij.execution.RunManagerListener
import com.intellij.execution.RunnerAndConfigurationSettings
import com.intellij.execution.configurations.ConfigurationType
import com.intellij.execution.dashboard.RunDashboardChecker
import com.intellij.execution.dashboard.RunDashboardManager
import com.intellij.icons.AllIcons
import com.intellij.ide.util.PropertiesComponent
import com.intellij.notification.Notification

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard;
// 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.platform.execution.dashboard;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Key;

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard;
// 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.platform.execution.dashboard;
import com.google.common.collect.Sets;
import com.intellij.execution.*;
@@ -7,8 +7,7 @@ import com.intellij.execution.configurations.ConfigurationType;
import com.intellij.execution.configurations.ConfigurationTypeUtil;
import com.intellij.execution.configurations.RunConfiguration;
import com.intellij.execution.configurations.RunProfile;
import com.intellij.execution.dashboard.tree.RunConfigurationNode;
import com.intellij.execution.dashboard.tree.RunDashboardStatusFilter;
import com.intellij.execution.dashboard.*;
import com.intellij.execution.impl.ExecutionManagerImpl;
import com.intellij.execution.impl.RunManagerImpl;
import com.intellij.execution.impl.RunnerAndConfigurationSettingsImpl;
@@ -40,6 +39,8 @@ import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Comparing;
import com.intellij.openapi.util.Condition;
import com.intellij.openapi.wm.ToolWindowId;
import com.intellij.platform.execution.dashboard.tree.RunConfigurationNode;
import com.intellij.platform.execution.dashboard.tree.RunDashboardStatusFilter;
import com.intellij.ui.ClientProperty;
import com.intellij.ui.IdeBorderFactory;
import com.intellij.ui.SideBorder;
@@ -63,7 +64,7 @@ import java.util.concurrent.locks.ReentrantReadWriteLock;
import java.util.function.Predicate;
import java.util.stream.Collectors;
import static com.intellij.execution.dashboard.RunDashboardServiceViewContributor.RUN_DASHBOARD_CONTENT_TOOLBAR;
import static com.intellij.platform.execution.dashboard.RunDashboardServiceViewContributor.RUN_DASHBOARD_CONTENT_TOOLBAR;
@State(name = "RunDashboard", storages = @Storage(StoragePathMacros.WORKSPACE_FILE))
public final class RunDashboardManagerImpl implements RunDashboardManager, PersistentStateComponent<RunDashboardManagerImpl.State> {

View File

@@ -1,17 +1,15 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard;
// 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.platform.execution.dashboard;
import com.intellij.execution.RunManager;
import com.intellij.execution.RunnerAndConfigurationSettings;
import com.intellij.execution.actions.StopAction;
import com.intellij.execution.configurations.ConfigurationType;
import com.intellij.execution.configurations.RunConfiguration;
import com.intellij.execution.dashboard.RunDashboardNode;
import com.intellij.execution.dashboard.*;
import com.intellij.execution.dashboard.actions.ExecutorAction;
import com.intellij.execution.dashboard.tree.FolderDashboardGroupingRule.FolderDashboardGroup;
import com.intellij.execution.dashboard.tree.GroupingNode;
import com.intellij.execution.dashboard.tree.RunConfigurationNode;
import com.intellij.execution.dashboard.tree.RunDashboardGroupImpl;
import com.intellij.execution.dashboard.tree.RunDashboardStatusFilter;
import com.intellij.execution.dashboard.actions.RunDashboardGroupNode;
import com.intellij.execution.impl.RunManagerImpl;
import com.intellij.execution.process.ProcessHandler;
import com.intellij.execution.runners.FakeRerunAction;
@@ -35,6 +33,11 @@ import com.intellij.openapi.util.NlsSafe;
import com.intellij.openapi.util.NullableLazyValue;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.platform.execution.dashboard.tree.FolderDashboardGroupingRule.FolderDashboardGroup;
import com.intellij.platform.execution.dashboard.tree.GroupingNode;
import com.intellij.platform.execution.dashboard.tree.RunConfigurationNode;
import com.intellij.platform.execution.dashboard.tree.RunDashboardGroupImpl;
import com.intellij.platform.execution.dashboard.tree.RunDashboardStatusFilter;
import com.intellij.pom.Navigatable;
import com.intellij.psi.PsiElement;
import com.intellij.psi.util.PsiUtilCore;
@@ -53,7 +56,8 @@ import javax.swing.*;
import java.util.*;
public final class RunDashboardServiceViewContributor
implements ServiceViewGroupingContributor<RunDashboardServiceViewContributor.RunConfigurationContributor, GroupingNode> {
implements ServiceViewGroupingContributor<RunDashboardServiceViewContributor.RunConfigurationContributor, GroupingNode>,
RunDashboardGroupNode {
@NonNls static final String RUN_DASHBOARD_CONTENT_TOOLBAR = "RunDashboardContentToolbar";
@@ -109,6 +113,12 @@ public final class RunDashboardServiceViewContributor
return new RunDashboardGroupViewDescriptor(node);
}
@Override
public @NotNull List<@NotNull Object> getChildren(@NotNull Project project, @NotNull AnActionEvent e) {
return ((ServiceViewManagerImpl)ServiceViewManager.getInstance(project))
.getChildrenSafe(e, List.of(this), RunDashboardServiceViewContributor.class);
}
private static ActionGroup getToolbarActions(@Nullable RunContentDescriptor descriptor) {
DefaultActionGroup actionGroup = new DefaultActionGroup();
actionGroup.add(ActionManager.getInstance().getAction(RUN_DASHBOARD_CONTENT_TOOLBAR));

View File

@@ -1,10 +1,10 @@
// Copyright 2000-2020 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.execution.dashboard;
// 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.platform.execution.dashboard;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.configurations.ConfigurationType;
import com.intellij.execution.dashboard.tree.GroupingNode;
import com.intellij.execution.dashboard.tree.RunDashboardGroupImpl;
import com.intellij.execution.dashboard.RunDashboardGroup;
import com.intellij.execution.dashboard.RunDashboardManager;
import com.intellij.execution.services.ServiceViewContributorDeleteProvider;
import com.intellij.ide.DeleteProvider;
import com.intellij.ide.IdeBundle;
@@ -15,6 +15,8 @@ import com.intellij.openapi.actionSystem.PlatformCoreDataKeys;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.MessageDialogBuilder;
import com.intellij.openapi.ui.Messages;
import com.intellij.platform.execution.dashboard.tree.GroupingNode;
import com.intellij.platform.execution.dashboard.tree.RunDashboardGroupImpl;
import com.intellij.util.ObjectUtils;
import com.intellij.util.SmartList;
import com.intellij.util.containers.ContainerUtil;

View File

@@ -1,7 +1,8 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard;
// 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.platform.execution.dashboard;
import com.intellij.execution.configurations.ConfigurationType;
import com.intellij.execution.dashboard.RunDashboardManager;
import com.intellij.execution.impl.statistics.RunConfigurationTypeUsagesCollector;
import com.intellij.internal.statistic.beans.MetricEvent;
import com.intellij.internal.statistic.eventLog.EventLogGroup;

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions
// 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.platform.execution.dashboard.actions
import com.intellij.execution.ExecutionBundle
import com.intellij.execution.configurations.ConfigurationType

View File

@@ -1,8 +1,9 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.Executor;
import com.intellij.execution.dashboard.RunDashboardRunConfigurationNode;
import com.intellij.execution.dashboard.actions.RunDashboardActionUtils;
import com.intellij.execution.ui.RunContentDescriptor;
import com.intellij.execution.ui.RunContentManager;
import com.intellij.execution.ui.RunContentManagerImpl;

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.RunManager;
@@ -9,6 +9,7 @@ import com.intellij.execution.configurations.ConfigurationFactory;
import com.intellij.execution.configurations.RunConfiguration;
import com.intellij.execution.configurations.RunConfigurationBase;
import com.intellij.execution.dashboard.RunDashboardRunConfigurationNode;
import com.intellij.execution.dashboard.actions.RunDashboardActionUtils;
import com.intellij.execution.impl.RunDialog;
import com.intellij.execution.impl.RunnerAndConfigurationSettingsImpl;
import com.intellij.openapi.actionSystem.*;

View File

@@ -1,9 +1,10 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.Executor;
import com.intellij.execution.ExecutorRegistry;
import com.intellij.execution.dashboard.actions.ExecutorAction;
import com.intellij.icons.AllIcons;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.Presentation;

View File

@@ -1,9 +1,10 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.RunManager;
import com.intellij.execution.dashboard.RunDashboardRunConfigurationNode;
import com.intellij.execution.dashboard.actions.RunDashboardActionUtils;
import com.intellij.execution.impl.RunDialog;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.project.Project;

View File

@@ -1,7 +1,7 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.dashboard.tree.StatusDashboardGroupingRule;
import com.intellij.platform.execution.dashboard.tree.StatusDashboardGroupingRule;
import org.jetbrains.annotations.NotNull;
final class GroupByConfigurationStatusAction extends RunDashboardGroupingRuleToggleAction {

View File

@@ -1,7 +1,7 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.dashboard.tree.ConfigurationTypeDashboardGroupingRule;
import com.intellij.platform.execution.dashboard.tree.ConfigurationTypeDashboardGroupingRule;
import org.jetbrains.annotations.NotNull;
final class GroupByConfigurationTypeAction extends RunDashboardGroupingRuleToggleAction {

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.dashboard.RunDashboardRunConfigurationNode;

View File

@@ -1,16 +1,17 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.configurations.RunConfiguration;
import com.intellij.execution.dashboard.RunDashboardManager;
import com.intellij.execution.dashboard.RunDashboardManagerImpl;
import com.intellij.execution.dashboard.RunDashboardRunConfigurationNode;
import com.intellij.execution.dashboard.actions.RunDashboardActionUtils;
import com.intellij.openapi.actionSystem.ActionUpdateThread;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.Presentation;
import com.intellij.openapi.project.DumbAwareAction;
import com.intellij.openapi.project.Project;
import com.intellij.platform.execution.dashboard.RunDashboardManagerImpl;
import com.intellij.util.containers.ContainerUtil;
import org.jetbrains.annotations.NotNull;

View File

@@ -1,13 +1,13 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.dashboard.RunDashboardManager;
import com.intellij.execution.dashboard.RunDashboardManagerImpl;
import com.intellij.openapi.actionSystem.ActionUpdateThread;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.ToggleAction;
import com.intellij.openapi.project.DumbAware;
import com.intellij.openapi.project.Project;
import com.intellij.platform.execution.dashboard.RunDashboardManagerImpl;
import org.jetbrains.annotations.NotNull;
final class OpenRunningConfigInNewTabAction extends ToggleAction implements DumbAware {

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.configurations.ConfigurationType;

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.RunManager;
import com.intellij.execution.RunnerAndConfigurationSettings;

View File

@@ -1,13 +1,12 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.configurations.ConfigurationType;
import com.intellij.execution.configurations.RunConfiguration;
import com.intellij.execution.dashboard.*;
import com.intellij.execution.dashboard.tree.ConfigurationTypeDashboardGroupingRule;
import com.intellij.execution.dashboard.tree.GroupingNode;
import com.intellij.execution.dashboard.tree.RunDashboardGroupImpl;
import com.intellij.execution.dashboard.RunDashboardManager;
import com.intellij.execution.dashboard.RunDashboardNode;
import com.intellij.execution.dashboard.RunDashboardRunConfigurationNode;
import com.intellij.execution.services.ServiceViewActionUtils;
import com.intellij.ide.util.PropertiesComponent;
import com.intellij.openapi.actionSystem.ActionPlaces;
@@ -16,6 +15,11 @@ import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.Presentation;
import com.intellij.openapi.project.DumbAwareAction;
import com.intellij.openapi.project.Project;
import com.intellij.platform.execution.dashboard.RunDashboardManagerImpl;
import com.intellij.platform.execution.dashboard.RunDashboardServiceViewContributor;
import com.intellij.platform.execution.dashboard.tree.ConfigurationTypeDashboardGroupingRule;
import com.intellij.platform.execution.dashboard.tree.GroupingNode;
import com.intellij.platform.execution.dashboard.tree.RunDashboardGroupImpl;
import com.intellij.util.ObjectUtils;
import com.intellij.util.containers.ContainerUtil;
import org.jetbrains.annotations.NotNull;

View File

@@ -1,8 +1,9 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.ExecutionBundle;
import com.intellij.execution.Executor;
import com.intellij.execution.dashboard.actions.ExecutorAction;
import com.intellij.execution.executors.DefaultRunExecutor;
import com.intellij.icons.AllIcons;
import com.intellij.openapi.actionSystem.AnActionEvent;

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.openapi.actionSystem.ActionPromoter;
import com.intellij.openapi.actionSystem.AnAction;

View File

@@ -1,17 +1,17 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.dashboard.RunDashboardManager;
import com.intellij.execution.dashboard.RunDashboardManagerImpl;
import com.intellij.execution.dashboard.RunDashboardRunConfigurationStatus;
import com.intellij.execution.dashboard.RunDashboardServiceViewContributor;
import com.intellij.execution.dashboard.tree.RunDashboardStatusFilter;
import com.intellij.execution.services.ServiceViewActionUtils;
import com.intellij.execution.services.ServiceViewContributor;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.project.DumbAware;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.NlsActions;
import com.intellij.platform.execution.dashboard.RunDashboardManagerImpl;
import com.intellij.platform.execution.dashboard.RunDashboardServiceViewContributor;
import com.intellij.platform.execution.dashboard.tree.RunDashboardStatusFilter;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;

View File

@@ -1,7 +1,6 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.dashboard.RunDashboardServiceViewContributor;
import com.intellij.execution.services.ServiceEventListener;
import com.intellij.execution.services.ServiceViewActionUtils;
import com.intellij.execution.services.ServiceViewContributor;
@@ -12,6 +11,7 @@ import com.intellij.openapi.actionSystem.Presentation;
import com.intellij.openapi.actionSystem.ToggleAction;
import com.intellij.openapi.project.DumbAware;
import com.intellij.openapi.project.Project;
import com.intellij.platform.execution.dashboard.RunDashboardServiceViewContributor;
import org.jetbrains.annotations.NotNull;
import java.util.Set;

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.dashboard.RunDashboardRunConfigurationNode;
import com.intellij.execution.impl.ExecutionManagerImpl;

View File

@@ -1,16 +1,16 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.actions;
// 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.platform.execution.dashboard.actions;
import com.intellij.execution.RunnerAndConfigurationSettings;
import com.intellij.execution.dashboard.RunDashboardManager;
import com.intellij.execution.dashboard.RunDashboardManager.RunDashboardService;
import com.intellij.execution.dashboard.tree.FolderDashboardGroupingRule;
import com.intellij.execution.dashboard.tree.GroupingNode;
import com.intellij.execution.impl.RunManagerImpl;
import com.intellij.openapi.actionSystem.ActionUpdateThread;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.project.Project;
import com.intellij.platform.execution.dashboard.tree.FolderDashboardGroupingRule;
import com.intellij.platform.execution.dashboard.tree.GroupingNode;
import com.intellij.util.containers.ContainerUtil;
import org.jetbrains.annotations.NotNull;

View File

@@ -0,0 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
@Internal
package com.intellij.platform.execution.dashboard.actions;
import org.jetbrains.annotations.ApiStatus.Internal;

View File

@@ -0,0 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
@Internal
package com.intellij.platform.execution.dashboard;
import org.jetbrains.annotations.ApiStatus.Internal;

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.tree;
// 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.platform.execution.dashboard.tree;
import com.intellij.execution.RunnerAndConfigurationSettings;
import com.intellij.execution.configurations.ConfigurationType;

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.tree;
// 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.platform.execution.dashboard.tree;
import com.intellij.execution.RunnerAndConfigurationSettings;
import com.intellij.execution.dashboard.RunDashboardGroup;

View File

@@ -1,12 +1,17 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.tree;
// 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.platform.execution.dashboard.tree;
import com.intellij.execution.dashboard.RunDashboardGroup;
import com.intellij.execution.dashboard.RunDashboardNode;
import com.intellij.execution.dashboard.actions.RunDashboardGroupNode;
import com.intellij.execution.services.ServiceViewManager;
import com.intellij.execution.services.ServiceViewManagerImpl;
import com.intellij.ide.projectView.PresentationData;
import com.intellij.ide.util.treeView.AbstractTreeNode;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Pair;
import com.intellij.platform.execution.dashboard.RunDashboardServiceViewContributor;
import org.jetbrains.annotations.NotNull;
import java.util.ArrayList;
@@ -16,7 +21,9 @@ import java.util.List;
/**
* @author konstantin.aleev
*/
public final class GroupingNode extends AbstractTreeNode<Pair<Object, RunDashboardGroup>> implements RunDashboardNode {
public final class GroupingNode extends AbstractTreeNode<Pair<Object, RunDashboardGroup>>
implements RunDashboardNode,
RunDashboardGroupNode {
private final List<AbstractTreeNode<?>> myChildren = new ArrayList<>();
public GroupingNode(Project project, Object parent, RunDashboardGroup group) {
@@ -43,4 +50,10 @@ public final class GroupingNode extends AbstractTreeNode<Pair<Object, RunDashboa
presentation.setPresentableText(getGroup().getName());
presentation.setIcon(getGroup().getIcon());
}
@Override
public @NotNull List<@NotNull Object> getChildren(@NotNull Project project, @NotNull AnActionEvent e) {
return ((ServiceViewManagerImpl)ServiceViewManager.getInstance(project))
.getChildrenSafe(e, List.of(this), RunDashboardServiceViewContributor.class);
}
}

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.tree;
// 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.platform.execution.dashboard.tree;
import com.intellij.execution.Executor;
import com.intellij.execution.RunManager;

View File

@@ -1,19 +1,5 @@
/*
* Copyright 2000-2017 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.intellij.execution.dashboard.tree;
// 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.platform.execution.dashboard.tree;
import com.intellij.execution.dashboard.RunDashboardGroup;

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.tree;
// 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.platform.execution.dashboard.tree;
import com.intellij.execution.dashboard.RunDashboardRunConfigurationNode;
import com.intellij.execution.dashboard.RunDashboardRunConfigurationStatus;

View File

@@ -1,5 +1,5 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.execution.dashboard.tree;
// 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.platform.execution.dashboard.tree;
import com.intellij.execution.dashboard.RunDashboardGroup;
import com.intellij.execution.dashboard.RunDashboardGroupingRule;

View File

@@ -0,0 +1,5 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
@Internal
package com.intellij.platform.execution.dashboard.tree;
import org.jetbrains.annotations.ApiStatus.Internal;

View File

@@ -11015,52 +11015,6 @@ c:com.intellij.execution.console.ProcessBackedConsoleExecuteActionHandler
- sendText(java.lang.String):V
- setProcessHandler(com.intellij.execution.process.ProcessHandler):V
- value(com.intellij.execution.console.LanguageConsoleView):Z
f:com.intellij.execution.dashboard.RunDashboardComponentWrapper
- com.intellij.ui.components.panels.NonOpaquePanel
- sf:CONTENT_ID_KEY:com.intellij.openapi.util.Key
- <init>(com.intellij.openapi.project.Project):V
- getContentId():java.lang.Integer
- getProject():com.intellij.openapi.project.Project
- setContentId(java.lang.Integer):V
f:com.intellij.execution.dashboard.RunDashboardManagerImpl
- com.intellij.execution.dashboard.RunDashboardManager
- com.intellij.openapi.components.PersistentStateComponent
- <init>(com.intellij.openapi.project.Project):V
- getDashboardContentManager():com.intellij.ui.content.ContentManager
- getHiddenConfigurations():java.util.Set
- getReuseCondition():java.util.function.Predicate
- getRunConfigurations():java.util.List
- getState():com.intellij.execution.dashboard.RunDashboardManagerImpl$State
- getStatusFilter():com.intellij.execution.dashboard.tree.RunDashboardStatusFilter
- getToolWindowIcon():javax.swing.Icon
- getToolWindowId():java.lang.String
- getTypes():java.util.Set
- hideConfigurations(java.util.Collection):V
- isOpenRunningConfigInNewTab():Z
- isShowInDashboard(com.intellij.execution.configurations.RunConfiguration):Z
- loadState(com.intellij.execution.dashboard.RunDashboardManagerImpl$State):V
- noStateLoaded():V
- restoreConfigurations(java.util.Collection):V
- setOpenRunningConfigInNewTab(Z):V
- setTypes(java.util.Set):V
- updateDashboard(Z):V
f:com.intellij.execution.dashboard.RunDashboardServiceViewContributor
- com.intellij.execution.services.ServiceViewGroupingContributor
- <init>():V
- getGroupDescriptor(com.intellij.execution.dashboard.tree.GroupingNode):com.intellij.execution.services.ServiceViewDescriptor
- getGroups(com.intellij.execution.dashboard.RunDashboardServiceViewContributor$RunConfigurationContributor):java.util.List
- getServiceDescriptor(com.intellij.openapi.project.Project,com.intellij.execution.dashboard.RunDashboardServiceViewContributor$RunConfigurationContributor):com.intellij.execution.services.ServiceViewDescriptor
- getServices(com.intellij.openapi.project.Project):java.util.List
- getViewDescriptor(com.intellij.openapi.project.Project):com.intellij.execution.services.ServiceViewDescriptor
f:com.intellij.execution.dashboard.actions.AddRunConfigurationTypeAction
- com.intellij.openapi.project.DumbAwareAction
- <init>():V
- actionPerformed(com.intellij.openapi.actionSystem.AnActionEvent):V
- getActionUpdateThread():com.intellij.openapi.actionSystem.ActionUpdateThread
- update(com.intellij.openapi.actionSystem.AnActionEvent):V
f:com.intellij.execution.dashboard.actions.DebugAction
- com.intellij.execution.dashboard.actions.ExecutorAction
- <init>():V
a:com.intellij.execution.dashboard.actions.ExecutorAction
- com.intellij.openapi.project.DumbAwareAction
- p:<init>():V
@@ -11070,67 +11024,6 @@ a:com.intellij.execution.dashboard.actions.ExecutorAction
- pa:getExecutor():com.intellij.execution.Executor
- update(com.intellij.openapi.actionSystem.AnActionEvent):V
- pa:update(com.intellij.openapi.actionSystem.AnActionEvent,Z):V
f:com.intellij.execution.dashboard.actions.RunAction
- com.intellij.execution.dashboard.actions.ExecutorAction
- <init>():V
f:com.intellij.execution.dashboard.actions.RunDashboardActionPromoter
- com.intellij.openapi.actionSystem.ActionPromoter
- <init>():V
- promote(java.util.List,com.intellij.openapi.actionSystem.DataContext):java.util.List
f:com.intellij.execution.dashboard.tree.ConfigurationTypeDashboardGroupingRule
- com.intellij.execution.dashboard.RunDashboardGroupingRule
- sf:NAME:java.lang.String
- <init>():V
- getGroup(com.intellij.ide.util.treeView.AbstractTreeNode):com.intellij.execution.dashboard.RunDashboardGroup
- getName():java.lang.String
f:com.intellij.execution.dashboard.tree.FolderDashboardGroupingRule
- com.intellij.execution.dashboard.RunDashboardGroupingRule
- <init>():V
- getGroup(com.intellij.ide.util.treeView.AbstractTreeNode):com.intellij.execution.dashboard.RunDashboardGroup
- getName():java.lang.String
f:com.intellij.execution.dashboard.tree.FolderDashboardGroupingRule$FolderDashboardGroup
- com.intellij.execution.dashboard.tree.RunDashboardGroupImpl
- <init>(com.intellij.openapi.project.Project,java.lang.String,java.lang.String,javax.swing.Icon):V
- getProject():com.intellij.openapi.project.Project
f:com.intellij.execution.dashboard.tree.GroupingNode
- com.intellij.ide.util.treeView.AbstractTreeNode
- com.intellij.execution.dashboard.RunDashboardNode
- <init>(com.intellij.openapi.project.Project,java.lang.Object,com.intellij.execution.dashboard.RunDashboardGroup):V
- addChildren(java.util.Collection):V
- getChildren():java.util.Collection
- getGroup():com.intellij.execution.dashboard.RunDashboardGroup
f:com.intellij.execution.dashboard.tree.RunConfigurationNode
- com.intellij.ide.util.treeView.AbstractTreeNode
- com.intellij.execution.dashboard.RunDashboardRunConfigurationNode
- <init>(com.intellij.openapi.project.Project,com.intellij.execution.dashboard.RunDashboardManager$RunDashboardService,java.util.List):V
- getChildren():java.util.Collection
- getConfigurationSettings():com.intellij.execution.RunnerAndConfigurationSettings
- getContent():com.intellij.ui.content.Content
- getCustomizers():java.util.List
- getDescriptor():com.intellij.execution.ui.RunContentDescriptor
- getStatus():com.intellij.execution.dashboard.RunDashboardRunConfigurationStatus
- getUserData(com.intellij.openapi.util.Key):java.lang.Object
- putUserData(com.intellij.openapi.util.Key,java.lang.Object):V
c:com.intellij.execution.dashboard.tree.RunDashboardGroupImpl
- com.intellij.execution.dashboard.RunDashboardGroup
- <init>(java.lang.Object,java.lang.String,javax.swing.Icon):V
- f:equals(java.lang.Object):Z
- getIcon():javax.swing.Icon
- getName():java.lang.String
- getValue():java.lang.Object
- hashCode():I
f:com.intellij.execution.dashboard.tree.RunDashboardStatusFilter
- <init>():V
- hide(com.intellij.execution.dashboard.RunDashboardRunConfigurationStatus):V
- isVisible(com.intellij.execution.dashboard.RunDashboardRunConfigurationStatus):Z
- isVisible(com.intellij.ide.util.treeView.AbstractTreeNode):Z
- show(com.intellij.execution.dashboard.RunDashboardRunConfigurationStatus):V
f:com.intellij.execution.dashboard.tree.StatusDashboardGroupingRule
- com.intellij.execution.dashboard.RunDashboardGroupingRule
- sf:NAME:java.lang.String
- <init>():V
- getGroup(com.intellij.ide.util.treeView.AbstractTreeNode):com.intellij.execution.dashboard.RunDashboardGroup
- getName():java.lang.String
f:com.intellij.execution.filters.TextConsoleBuilderFactoryImpl
- com.intellij.execution.filters.TextConsoleBuilderFactory
- <init>():V

View File

@@ -16,8 +16,6 @@ com/intellij/codeInspection/ex/GlobalInspectionContextImpl
com/intellij/codeInspection/ex/VisibleTreeState
com/intellij/codeInspection/ex/VisibleTreeStateComponent
com/intellij/conversion/impl/CachedConversionResult
com/intellij/execution/dashboard/RunDashboardManagerImpl$State
com/intellij/execution/dashboard/RunDashboardServiceViewContributor$RunConfigurationContributor
com/intellij/execution/services/ServiceViewManagerImpl$State
com/intellij/facet/frameworks/beans/Artifact
com/intellij/facet/frameworks/beans/ArtifactItem

View File

@@ -1,38 +1,36 @@
// Copyright 2000-2020 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.
// 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.execution.dashboard.actions;
import com.intellij.execution.dashboard.RunDashboardRunConfigurationNode;
import com.intellij.execution.dashboard.RunDashboardServiceViewContributor;
import com.intellij.execution.dashboard.tree.GroupingNode;
import com.intellij.execution.services.ServiceViewActionUtils;
import com.intellij.execution.services.ServiceViewManager;
import com.intellij.execution.services.ServiceViewManagerImpl;
import com.intellij.ide.util.treeView.AbstractTreeNode;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.PlatformCoreDataKeys;
import com.intellij.openapi.project.Project;
import com.intellij.util.containers.JBIterable;
import org.jetbrains.annotations.ApiStatus.Internal;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.*;
final class RunDashboardActionUtils {
@Internal
public final class RunDashboardActionUtils {
private RunDashboardActionUtils() {
}
@NotNull
static List<RunDashboardRunConfigurationNode> getTargets(@NotNull AnActionEvent e) {
public static List<RunDashboardRunConfigurationNode> getTargets(@NotNull AnActionEvent e) {
return ServiceViewActionUtils.getTargets(e, RunDashboardRunConfigurationNode.class);
}
@Nullable
static RunDashboardRunConfigurationNode getTarget(@NotNull AnActionEvent e) {
public static RunDashboardRunConfigurationNode getTarget(@NotNull AnActionEvent e) {
return ServiceViewActionUtils.getTarget(e, RunDashboardRunConfigurationNode.class);
}
@NotNull
static JBIterable<RunDashboardRunConfigurationNode> getLeafTargets(@NotNull AnActionEvent e) {
public static JBIterable<RunDashboardRunConfigurationNode> getLeafTargets(@NotNull AnActionEvent e) {
Project project = e.getProject();
if (project == null) return JBIterable.empty();
@@ -46,11 +44,10 @@ final class RunDashboardActionUtils {
private static boolean getLeaves(Project project, AnActionEvent e, List<Object> items, List<Object> valueSubPath,
Set<? super RunDashboardRunConfigurationNode> result) {
for (Object item : items) {
if (item instanceof RunDashboardServiceViewContributor || item instanceof GroupingNode) {
if (item instanceof RunDashboardGroupNode groupNode) {
List<Object> itemSubPath = new ArrayList<>(valueSubPath);
itemSubPath.add(item);
List<Object> children = ((ServiceViewManagerImpl)ServiceViewManager.getInstance(project))
.getChildrenSafe(e, itemSubPath, RunDashboardServiceViewContributor.class);
List<Object> children = groupNode.getChildren(project, e);
if (!getLeaves(project, e, children, itemSubPath, result)) {
return false;
}

View File

@@ -0,0 +1,21 @@
// 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.execution.dashboard.actions;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.ApiStatus.Internal;
import org.jetbrains.annotations.NotNull;
import java.util.List;
/**
* ExecutorAction has to be left in lang-impl for compatibility.
* It depends on RunDashboardActionUtils.
* RunDashboardActionUtils depend on RunDashboardServiceViewContributor and GroupingNode.
* This interface abstracts RunDashboardServiceViewContributor and GroupingNode and breaks the last dependency.
*/
@Internal
public interface RunDashboardGroupNode {
@NotNull List<@NotNull Object> getChildren(@NotNull Project project, @NotNull AnActionEvent e);
}

View File

@@ -7,6 +7,7 @@
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="intellij.platform.bootstrap" scope="RUNTIME" />
<orderEntry type="module" module-name="intellij.platform.clouds" scope="RUNTIME" />
<orderEntry type="module" module-name="intellij.platform.execution.dashboard" scope="RUNTIME" />
<orderEntry type="module" module-name="intellij.platform.kernel" scope="RUNTIME" />
</component>
</module>

View File

@@ -283,7 +283,6 @@
<extensionPoint name="runDashboardCustomizer" interface="com.intellij.execution.dashboard.RunDashboardCustomizer" dynamic="true"/>
<extensionPoint name="runDashboardDefaultTypesProvider" interface="com.intellij.execution.dashboard.RunDashboardDefaultTypesProvider" dynamic="true"/>
<extensionPoint name="runDashboardGroupingRule" interface="com.intellij.execution.dashboard.RunDashboardGroupingRule" dynamic="true"/>
<extensionPoint name="runDashboardChecker" interface="com.intellij.execution.dashboard.RunDashboardChecker" dynamic="true"/>
<extensionPoint name="serviceViewContributor" interface="com.intellij.execution.services.ServiceViewContributor" dynamic="true"/>
<extensionPoint name="hectorComponentProvider" interface="com.intellij.openapi.editor.HectorComponentPanelsProvider" area="IDEA_PROJECT" dynamic="true"/>

View File

@@ -1234,7 +1234,6 @@
<statistics.projectUsagesCollector implementation="com.intellij.internal.statistic.InspectionUsageFUSCollector"/>
<statistics.applicationUsagesCollector implementation="com.intellij.internal.statistic.collectors.fus.KeymapUsageCollector"/>
<statistics.applicationUsagesCollector implementation="com.intellij.internal.statistic.collectors.fus.KeymapChangesCollector"/>
<statistics.projectUsagesCollector implementation="com.intellij.execution.dashboard.RunDashboardUsagesCollector"/>
<statistics.projectUsagesCollector implementation="com.intellij.codeInsight.hints.InlayProviderUsageCollector"/>
<statistics.projectUsagesCollector implementation="com.intellij.codeInsight.daemon.impl.analysis.HighlightingSettingsPerFileCollector"/>
<statistics.projectUsagesCollector implementation="com.intellij.ui.tabs.FileColorsUsagesCollector"/>
@@ -1358,30 +1357,14 @@
serviceImplementation="com.intellij.execution.impl.ExecutionManagerImpl"/>
<projectService serviceInterface="com.intellij.execution.ExecutionTargetManager"
serviceImplementation="com.intellij.execution.ExecutionTargetManagerImpl"/>
<projectService serviceInterface="com.intellij.execution.dashboard.RunDashboardManager"
serviceImplementation="com.intellij.execution.dashboard.RunDashboardManagerImpl"/>
<backgroundPostStartupActivity implementation="com.intellij.execution.dashboard.RunDashboardCheckerActivity"/>
<notificationGroup id="JDK Update Error" displayType="STICKY_BALLOON" bundle="messages.LangBundle"
key="notification.group.jdk.update.error"/>
<notificationGroup id="ColorSchemeDrop" displayType="BALLOON" hideFromSettings="true"/>
<notificationGroup id="Services Tool Window" displayType="BALLOON" isLogByDefault="true" bundle="messages.ExecutionBundle"
key="notification.group.services"
notificationIds="run.dashboard.multiple.run.configurations"/>
<notificationGroup id="Batch quick fix" displayType="BALLOON" bundle="messages.LangBundle" key="notification.group.batch.quick.fix"/>
<projectService serviceInterface="com.intellij.execution.services.ServiceViewManager"
serviceImplementation="com.intellij.execution.services.ServiceViewManagerImpl"/>
<postStartupActivity implementation="com.intellij.execution.services.ServiceViewStartupActivity"/>
<runDashboardGroupingRule implementation="com.intellij.execution.dashboard.tree.ConfigurationTypeDashboardGroupingRule"
id="type" order="first"/>
<runDashboardGroupingRule implementation="com.intellij.execution.dashboard.tree.StatusDashboardGroupingRule"
id="status" order="after type"/>
<runDashboardGroupingRule implementation="com.intellij.execution.dashboard.tree.FolderDashboardGroupingRule"
id="folder" order="after status"/>
<actionPromoter implementation="com.intellij.execution.dashboard.actions.RunDashboardActionPromoter"/>
<actionPromoter implementation="com.intellij.execution.services.ServiceViewActionPromoter"/>
<serviceViewContributor implementation="com.intellij.execution.dashboard.RunDashboardServiceViewContributor"/>
<navbar implementation="com.intellij.execution.services.ServiceViewNavBarExtension"/>
<projectService serviceInterface="com.intellij.execution.ui.RunContentManager"
serviceImplementation="com.intellij.execution.ui.RunContentManagerImpl"/>

View File

@@ -884,8 +884,6 @@
<statistics.validation.customValidationRuleFactory implementation="com.intellij.configurationStore.statistic.eventLog.SettingsValueValidatorFactory"/>
<statistics.validation.customValidationRule
implementation="com.intellij.internal.statistic.collectors.fus.FacetTypeUsageCollector$FacetTypeUtilValidator"/>
<statistics.validation.customValidationRule
implementation="com.intellij.execution.dashboard.RunDashboardUsagesCollector$RunConfigurationTypeValidator"/>
<statistics.validation.customValidationRule
implementation="com.intellij.featureStatistics.FeatureUsageTrackerImpl$ProductivityUtilValidator"/>
<statistics.validation.customValidationRule

View File

@@ -11,5 +11,6 @@
<module name="intellij.platform.navbar.frontend.compatibility"/>
<module name="intellij.platform.navbar.monolith.compatibility"/>
<module name="intellij.platform.clouds"/>
<module name="intellij.platform.execution.dashboard"/>
</content>
</idea-plugin>

View File

@@ -1526,40 +1526,6 @@
<reference ref="EditSource"/>
<reference ref="TreeNodeExclusion"/>
</group>
<group id="RunDashboardContentToolbar">
<!--suppress PluginXmlValidity -->
<action id="RunDashboard.Run" class="com.intellij.execution.dashboard.actions.RunAction" icon="AllIcons.Actions.Execute" use-shortcut-of="RunClass">
<add-to-group anchor="first" group-id="RunTab.TopToolbar"/>
<add-to-group anchor="first" group-id="RunTab.TopToolbar.Old"/>
<add-to-group anchor="first" group-id="XDebugger.ToolWindow.TopToolbar3"/>
</action>
<!--suppress PluginXmlValidity -->
<action id="RunDashboard.Debug" class="com.intellij.execution.dashboard.actions.DebugAction" icon="AllIcons.Actions.StartDebugger" use-shortcut-of="DebugClass">
<add-to-group anchor="after" relative-to-action="RunDashboard.Run" group-id="RunTab.TopToolbar"/>
<add-to-group anchor="after" relative-to-action="RunDashboard.Run" group-id="RunTab.TopToolbar.Old"/>
<add-to-group anchor="after" relative-to-action="RunDashboard.Run" group-id="XDebugger.ToolWindow.TopToolbar3"/>
</action>
<action id="RunDashboard.Stop" class="com.intellij.execution.dashboard.actions.StopAction" icon="AllIcons.Actions.Suspend"
use-shortcut-of="Stop"/>
</group>
<group id="RunDashboardPopup">
<action id="RunDashboard.EditConfiguration" class="com.intellij.execution.dashboard.actions.EditConfigurationAction" icon="AllIcons.Actions.EditSource" use-shortcut-of="EditSourceInNewWindow"/>
<action id="RunDashboard.CopyConfiguration" class="com.intellij.execution.dashboard.actions.CopyConfigurationAction" icon="AllIcons.Actions.Copy" use-shortcut-of="EditorDuplicate"/>
<separator/>
<action id="RunDashboard.HideConfiguration" class="com.intellij.execution.dashboard.actions.HideConfigurationAction"/>
<action id="RunDashboard.RestoreHiddenConfigurations" class="com.intellij.execution.dashboard.actions.RestoreHiddenConfigurationsAction"/>
<action id="RunDashboard.RemoveType" class="com.intellij.execution.dashboard.actions.RemoveRunConfigurationTypeAction"/>
<action id="RunDashboard.OpenRunningConfigInNewTab" class="com.intellij.execution.dashboard.actions.OpenRunningConfigInNewTabAction"/>
<separator/>
<action id="RunDashboard.ClearContent" class="com.intellij.execution.dashboard.actions.ClearContentAction" icon="AllIcons.Actions.Cancel"/>
<action id="RunDashboard.RestoreConfiguration" class="com.intellij.execution.dashboard.actions.RestoreConfigurationAction" icon="AllIcons.Actions.Rollback"/>
<separator/>
<action id="RunDashboard.GroupConfigurations" class="com.intellij.execution.dashboard.actions.GroupConfigurationsAction" icon="AllIcons.Actions.GroupByPackage"/>
<action id="RunDashboard.UngroupConfigurations" class="com.intellij.execution.dashboard.actions.UngroupConfigurationsActions" icon="AllIcons.General.Remove" use-shortcut-of="$Delete"/>
<separator/>
</group>
<group id="ServiceViewTreeToolbar">
<group id="ServiceView.AddService" popup="true" icon="AllIcons.General.Add" use-shortcut-of="NewElement"
class="com.intellij.execution.services.AddServiceActionGroup">
@@ -1596,21 +1562,6 @@
<action id="ServiceView.SelectActiveService" class="com.intellij.execution.services.SelectActiveServiceAction"/>
<action id="ServiceView.ShowServices" class="com.intellij.execution.services.ShowServicesAction" icon="AllIcons.Actions.ShowAsTree"/>
<action id="ServiceView.ConfigureServices" class="com.intellij.execution.services.ConfigureServicesAction" icon="AllIcons.General.GearPlain"/>
<group id="RunDashboard.ViewOptions" popup="true" class="com.intellij.ide.actions.NonEmptyActionGroup">
<separator key="separator.RunDashboard.GroupBy"/>
<action id="RunDashboard.GroupByType" class="com.intellij.execution.dashboard.actions.GroupByConfigurationTypeAction"/>
<action id="RunDashboard.GroupByStatus" class="com.intellij.execution.dashboard.actions.GroupByConfigurationStatusAction"/>
<separator/>
<separator key="separator.RunDashboard.Filter"/>
<group id="RunDashboard.Filter" class="com.intellij.execution.dashboard.actions.RunDashboardFilterActionGroup"/>
<add-to-group group-id="ServiceView.ViewOptions"/>
</group>
<action id="RunDashboard.AddType" class="com.intellij.execution.dashboard.actions.AddRunConfigurationTypeAction">
<add-to-group group-id="ServiceView.AddService"/>
</action>
<reference id="RunDashboard.RestoreHiddenConfigurations">
<add-to-group group-id="ServiceView.AddService" anchor="after" relative-to-action="RunDashboard.AddType"/>
</reference>
<action id="RenameFile" class="com.intellij.refactoring.actions.RenameFileAction">
<add-to-group group-id="EditorTabPopupMenuEx" anchor="last"/>

View File

@@ -15,5 +15,6 @@
<orderEntry type="module" module-name="intellij.platform.lang" />
<orderEntry type="module" module-name="intellij.platform.remoteServers" />
<orderEntry type="module" module-name="intellij.platform.remoteServers.impl" />
<orderEntry type="module" module-name="intellij.platform.execution.dashboard" scope="RUNTIME" />
</component>
</module>

View File

@@ -1,6 +1,7 @@
<idea-plugin package="com.intellij.platform.clouds">
<dependencies>
<plugin id="com.intellij.modules.remoteServers"/>
<module name="intellij.platform.execution.dashboard"/>
</dependencies>
<extensions defaultExtensionNs="com.intellij">
<serviceViewContributor implementation="com.intellij.platform.clouds.impl.runtime.ui.DefaultRemoteServersServiceViewContributor"/>

View File

@@ -139,5 +139,6 @@
<orderEntry type="module" module-name="kotlin.ide" scope="TEST" />
<orderEntry type="module" module-name="kotlin.bundled-compiler-plugins-support" scope="TEST" />
<orderEntry type="module" module-name="intellij.platform.navbar.testFramework" scope="TEST" />
<orderEntry type="module" module-name="intellij.platform.execution.dashboard" scope="TEST" />
</component>
</module>